← All integrations Product analytics

FunnelKeeper + PostHog

The one source that is both halves at once: a product-analytics warehouse FunnelKeeper reads the funnel out of, and a replay tool it reads friction out of — on a single personal API key.

Accessread-only
SyncDaily, and on demand
On demandSync now available

What FunnelKeeper reads from PostHog

  • Sessions and engaged sessions by channel, rolled up from $pageview with first-touch attribution
  • PostHog events you map to funnel stages, exactly like GA4 event maps
  • Session replay links, plus $rageclick, $dead_click and $exception counts by page

What it never does

  • No writes to your PostHog project — the key needs query:read and session_recording:read, nothing more
  • No video is copied. Recordings are pointers back into PostHog, where access control stays yours
  • No feature flags, experiments or cohorts are touched

How to connect PostHog

Dashboard Integrations → PostHog → personal API key, project id, host
MCP connect_posthog, then set_posthog_event_maps
CLI fk connect posthog --product <slug>
API POST /products/{slug}/connections/posthog

Daily, and on demand — PostHog is rate-limited rather than metered, so Sync now works. Saving credentials also triggers a sync, so the dashboard fills in one step.

PostHog questions

Does self-hosted PostHog work?

Yes. The host is part of the connection, so US Cloud, EU Cloud and a self-hosted instance are all valid — paste the base URL you use for the app.

Which scopes does the personal API key need?

query:read for the HogQL endpoint that produces sessions and mapped events, and session_recording:read for replay links and friction counts. Anything wider than that is more access than FunnelKeeper uses.

Is FunnelKeeper a PostHog replacement?

No. PostHog is the stronger product-analytics tool and stays that way. FunnelKeeper adds the two things it does not join for you — ad spend and revenue — and returns a payback verdict per channel. Run both.

Usually connected alongside

Connect PostHog on the free tier. The first sync backfills history, so the dashboard opens with something in it.

Start free

Agents: the same page as markdown at /integrations/posthog.md.