Blog / Analytics

PostHog for Medium US Businesses: What You Get That GA4 Doesn't Give You

Most medium businesses are running three or four analytics tools and still not seeing the full picture. GA4 for traffic, Hotjar for session recordings, something else for A/B testing, and a separate dashboard to stitch it together. PostHog replaces all of them in one platform -- free up to one million events per month. Here is the honest case for it, specifically if your customers include anyone in the EU.

Brendan Andrew Chase

Brendan Andrew Chase

July 8, 2026  ·  12 min read  ·  Analytics

The Problem With the Current Stack

A typical medium US business running serious digital marketing has a stack that looks something like this: Google Analytics 4 for traffic and conversion data, Hotjar or Microsoft Clarity for session recordings and heatmaps, Google Optimize was supposed to handle A/B testing but it shut down in 2023 and was never properly replaced, and maybe a Looker Studio dashboard trying to pull it all together.

The result is that the data lives in three or four different places. When you want to know why a specific type of user is dropping off at checkout, you are manually cross-referencing GA4 cohorts with Hotjar recordings filtered by the same date range. It is slow, it is error-prone, and it still does not show you the full journey.

On top of that, if any of your customers are in the EU -- even incidentally, even if you do not target them -- you have a compliance question sitting in the background. GA4 has been declared non-compliant by data protection authorities in Austria, France, Italy, and Denmark. The issue is where the data goes after Google collects it. For most businesses, the practical risk is low today. But "low today" and "gone forever" are different things, and the conversation about US-based analytics platforms and EU data has not gone away.

PostHog addresses both problems at the same time: it consolidates the tool sprawl, and it gives you a path to EU data residency that does not involve switching analytics platforms entirely.

What PostHog Actually Is (And Is Not)

PostHog is an open-source product analytics platform. That description undersells it. In practice, it is a single platform that covers what you would otherwise need five tools to do:

  • Event-based analytics (pageviews, custom events, funnels, retention, user journeys)
  • Session recordings with clickmaps and heatmaps
  • Feature flags (toggle features on or off for specific user segments)
  • A/B testing and multivariate experiments
  • Surveys (in-app or on-page feedback)
  • Data warehouse integration (query your PostHog data directly in BigQuery, Snowflake, or Redshift)

Because it is open source, you can also self-host it on your own infrastructure if data control is a hard requirement. PostHog also operates two cloud regions: US (hosted on AWS in the United States) and EU (hosted in Frankfurt, Germany). The EU region matters for GDPR reasons, which we will cover shortly.

What PostHog is not: it is not a replacement for Google Ads conversion tracking, GA4's integration with Google's ad platforms, or a Search Console replacement. It does not give you SEO data or keyword ranking information. It sits alongside your ad tracking infrastructure, not in place of it. We still use GA4 and GTM on every client site we manage. PostHog adds a layer that GA4 does not cover well: understanding what users actually do after they land.

The EU and US Problem -- And Why It Matters Even for US Businesses

If you are a US business that has never thought much about EU data law, here is the relevant background in practical terms. The GDPR requires that personal data from EU residents either stays in the EU or is transferred to a country with adequate data protection. The US has historically been on shaky ground here, which is why multiple EU member states have issued rulings against using Google Analytics -- specifically because GA4 sends data to Google servers in the United States.

For most medium US businesses, the immediate risk from a European data protection authority is minimal. You would need to be operating meaningfully in those markets, and the authorities generally focus on larger platforms. But there are two situations where this becomes more relevant:

  1. You have EU-based enterprise clients or B2B prospects who ask about your data handling during due diligence. A documented answer is better than "we use Google Analytics."
  2. You serve EU consumers directly, even as a secondary market alongside your US focus. A legal ecommerce business selling to German or French customers has real GDPR obligations, regardless of where the business is incorporated.

PostHog's EU Cloud region means all data is stored and processed in Frankfurt, on EU infrastructure, and subject to EU data protection law. When a customer from Munich lands on your site and their session is captured by PostHog (EU region), that data never leaves Europe. You can make a clear statement about it in your privacy policy and mean it.

The US Cloud region is fine for US-only audiences and is what most of our clients use when EU traffic is minimal. The point is that the choice exists, and switching between regions does not require changing your analytics tool entirely.

There is also a consent angle that works in your favour. PostHog supports cookieless tracking options. If a user declines cookies, you can still capture anonymous session data without setting a persistent identifier. GA4 in consent-denied mode effectively turns off. PostHog in the equivalent mode still gives you aggregate behaviour data, which is more useful than a gap in your reporting.

Do you still need a consent banner with PostHog?

This depends on how PostHog is configured, and the answer is different from GA4. There are two separate laws at play here: GDPR (which applies to personal data) and the ePrivacy Directive, commonly called the Cookie Law (which applies specifically to cookies on the user's device). GA4 triggers both -- it uses cookies and collects personal data -- so you need opt-in consent before it fires for any EU user. There is no configuration that gets around that.

PostHog can be configured to trigger neither.

In anonymous mode -- no cookies, IP anonymisation enabled, no persistent user identifiers -- PostHog collects only aggregate, session-level data with no way to link it to a specific individual. Data that cannot identify a person falls outside GDPR entirely. Anonymous data is not personal data, so the regulation does not apply. In this mode, you can track by default without a consent banner, automatically honour Global Privacy Control signals from browsers like Brave, and only stop tracking if someone explicitly opts out. No banner required.

If you enable session recordings, user identification, or cross-visit user profiles, the situation changes. A session recording is personal data by definition -- it captures what a specific person did on your site, in detail. At that point GDPR applies regardless of where the server sits. You would need a consent mechanism before capturing EU visitors in those modes. It would not be a cookie banner (there are no cookies to consent to), but it would be a data collection prompt of some kind.

So the practical decision is: if you want to track EU visitors by default with no banner, use PostHog in anonymous mode. You get pageview analytics, funnel data, and aggregate session metrics -- and you lose session recordings and individual user profiles. If you want session recordings for EU visitors, you need consent for those specifically, which you can gate separately from the rest of the tracking.

The specific reason GA4 was ruled non-compliant in Austria, France, Italy, and Denmark was data transfers to US servers. PostHog EU Cloud removes that issue entirely. But even with EU Cloud, the consent question for personal data features remains the same -- what changes is where the data lives, not whether collecting it requires consent.

The simplest setup for a US business that wants to be covered

Use PostHog EU Cloud for all your traffic in anonymous mode. EU data protection standards are stricter than current US requirements, so if you are compliant at EU level you are covered everywhere. The only trade-off is slightly higher latency for US users hitting Frankfurt servers, which PostHog's CDN largely absorbs in practice. No consent banner required. GPC signals from Brave and similar browsers are honoured automatically.

If you also want session recordings, the cleanest approach is to gate them behind an explicit opt-in and only capture them for users who agree. You get recordings from the users who consent and aggregate analytics from everyone else.

The more operationally complex version -- and one that makes sense for future-proofing -- is to run two PostHog projects: EU Cloud for visitors from EU countries, US Cloud for everyone else. You detect the user's country via GTM or your server and route the PostHog initialisation accordingly. If the US ever passes a federal privacy law with its own data residency requirements (which does not currently exist but has been discussed), you already have the infrastructure split in place. You just switch the US project to a US-region setup and your EU data is already separate and untouched. The dual-project approach has one operational cost: two PostHog dashboards to manage instead of one.

We are not lawyers and none of this is legal advice. If GDPR compliance is a hard requirement for your business, get a review from a data protection solicitor. But in terms of what enforcement actions have actually targeted, PostHog in anonymous mode on the EU Cloud addresses it without requiring a consent banner.

No Sampling: What That Changes in Practice

GA4 samples data. If you are not running high volumes this may not matter to you today, but it is worth understanding what sampling means when it kicks in.

Sampling means GA4 does not process every individual session to generate a report. Instead it takes a subset of the data and scales the results up. The sample percentage drops as your traffic increases and as your report date ranges extend. For high-traffic sites or sites with a lot of custom events, you can end up looking at reports that represent 10 to 20% of actual sessions, scaled by a multiplier.

PostHog processes every event. There is no sampling on the analytics side -- what you see in a funnel analysis or retention chart reflects your actual data, not a statistical estimate of it. For a medium US business where individual campaign performance or a specific checkout funnel step might represent a few hundred events per month, the difference between real numbers and sampled numbers is meaningful.

The practical impact shows up most clearly in funnel analysis. If you are trying to understand where a specific audience segment drops off between product page and checkout, you want those numbers to be exact. A funnel built on sampled data might show a 60% drop-off at the address step when the real number is 72%. Those are different decisions.

Session Recordings Without Hotjar

Hotjar's business plan starts at $99/month. Microsoft Clarity is free but stores data on Microsoft servers and has limited filtering capabilities. FullStory is enterprise-priced and overkill for most medium businesses.

PostHog includes session recordings, heatmaps, and clickmaps on the free tier, up to 5,000 recordings per month. The recordings are linked directly to the user's event data. You can filter recordings by any PostHog property: users who completed a specific funnel step, users from a specific traffic source, users who triggered a custom event, users in a specific cohort.

That last point is the practical advantage over Hotjar. In Hotjar you watch recordings and try to infer which kind of user you are looking at. In PostHog you already know who the user is in terms of their session data, so you can pull recordings for users who, for example, added to cart but did not purchase, or users who visited the pricing page three times without converting, and watch exactly what happened.

For CRO work on a medium business site, this is genuinely useful. Instead of watching 50 random recordings and pattern-matching, you are watching targeted recordings tied to a specific behaviour you already know is a problem.

Feature Flags and A/B Testing Built In

Google Optimize shut down in September 2023. The replacements most businesses landed on were either expensive (VWO, Optimizely) or complicated to wire up correctly (manual GTM experiments that require custom JavaScript to run a proper holdout).

PostHog has feature flags and A/B testing built into the same platform where you are already tracking events. That matters because the conversion event you are measuring in an experiment is the same event you are already capturing in your analytics. There is no separate integration to build, no pixel to add, no export to match up.

A feature flag lets you enable a new design or copy variant for a specific percentage of traffic, or for specific user segments, without deploying separate code. An A/B experiment wraps a flag with statistical significance tracking and tells you when you have enough data to make a call.

For a medium US business this might look like: testing a new pricing page layout for 50% of traffic and measuring whether it produces more contact form submissions, with PostHog automatically tracking both the exposure to the variant and the conversion event in the same session.

The experiments module is not as fully featured as a dedicated CRO platform. If you need complex multivariate testing across dozens of simultaneous variables with Bayesian inference and automatic traffic allocation, you need a purpose-built tool. But for the bread-and-butter A/B tests most medium businesses should be running, PostHog covers it without adding another monthly bill.

What the Free Tier Actually Covers

PostHog's free tier includes one million analytics events per month. For context, one million events covers most medium business websites comfortably. If you are tracking pageviews plus a handful of custom events (form submission, button click, checkout step), a site with 50,000 monthly visits is generating roughly 200,000 to 400,000 events per month depending on how many events you fire per session. You have room to grow before the free tier becomes a constraint.

Session recordings have a separate limit: 5,000 sessions per month on the free tier. For CRO purposes this is enough to work with. If you want unlimited recordings you need a paid plan, but the free tier is a real starting point, not a stripped-down demo.

Feature flags, A/B experiments, and surveys are all available on the free tier. You are not paying to unlock A/B testing -- it is included.

Paid plans are priced per event above the free threshold. The cost scales with usage rather than by feature tier, which means a growing business does not suddenly face a large price jump because it needs one extra feature. You pay for what you use beyond the million-event baseline.

Does It Replace GA4?

Probably not, and we do not recommend treating it as a replacement in most cases. Here is why.

GA4 is deeply integrated with the Google Ads ecosystem. If you are running Google Ads, the conversion data, audience lists, and smart bidding signals all flow through GA4 in a way that PostHog cannot replicate. Removing GA4 from a site that runs Google Ads would break your conversion import, your remarketing audiences, and your auto-applied recommendations. That is a significant cost to recover.

GA4 also connects to Search Console and gives you organic search performance data. PostHog does not have any SEO data layer.

What PostHog replaces cleanly are the tools that sit around GA4: Hotjar or Clarity for recordings, Google Optimize's successor for A/B testing, and any separate product analytics tool you might be using to understand post-acquisition user behaviour.

The setup we use for most clients is GTM handling GA4, Google Ads conversion tracking, and PostHog loading as a custom HTML tag. All three run in parallel. GA4 handles the Google ecosystem integrations. PostHog handles the behavioural data, recordings, and experiments. There is no conflict and no duplication that causes a practical problem.

If your business does not run Google Ads and has no reason to stay on GA4, PostHog can work as a standalone analytics solution. But that is a minority of the medium businesses we work with.

How We Set It Up for Clients

We have been deploying PostHog for clients via GTM. The setup involves a Custom HTML tag in GTM that loads the PostHog JavaScript snippet and initialises it with the correct project API key and region (US or EU depending on the client's audience).

For clients who already have Google Consent Mode v2 configured -- which we implement as part of our standard GTM setup -- PostHog respects the same consent signals. If a user declines analytics cookies, PostHog fires in a reduced-data mode rather than collecting a full identified session. This means the consent framework you already have in place extends to PostHog without a separate consent management layer.

After the initial install, we configure the custom events that matter for the client's specific goals: form submissions, pricing page visits, specific CTA clicks, scroll depth on long pages. These become the backbone of funnel analysis and the conversion events used in A/B experiments.

The typical setup takes one to two hours for a straightforward site. More complex setups -- particularly if we are configuring the EU cloud region with adjusted privacy settings and cookieless fallbacks -- take half a day.

We Set This Up for Clients

If you want PostHog running on your site alongside your existing GTM and GA4 setup -- configured correctly for your audience, with the right region, consent handling, and custom events -- we can do that. We also handle the EU vs US region decision, privacy policy language, and custom event schema so you are collecting the data that actually matters for your specific conversion goals.

Get in touch

If you want to understand what is happening on your site beyond pageview counts and bounce rate, PostHog is the most cost-effective way to do it for a medium business. The free tier covers most sites. The EU region covers your compliance questions. The session recordings and A/B testing modules cover the gap left by Hotjar and Google Optimize. And because it all lives in one platform, you are not spending half your analysis time joining data from four different tools.

We are also happy to talk through whether PostHog is actually the right fit for your specific situation, including if the answer is that your current setup is already adequate and you do not need to add another tool. Drop us a message.

FAQ

Is PostHog GDPR compliant?

It depends on the configuration. In anonymous mode -- no cookies, IP anonymisation on, no persistent user identifiers -- PostHog collects no personal data, which means GDPR does not apply to it at all. You can track EU visitors by default with no consent banner, and automatically honour Global Privacy Control signals from browsers like Brave. If you enable session recordings or user-level identification, those features collect personal data and GDPR applies -- you would need a consent mechanism for those specifically. Using the EU Cloud region keeps all data in Frankfurt under EU jurisdiction, which resolves the data transfer issue that caused GA4 to be ruled non-compliant in several EU countries. We are not lawyers and this is not legal advice.

Can PostHog and GA4 run on the same site?

Yes. We run them alongside each other on every client site where PostHog is deployed. GA4 handles the Google Ads integrations, Search Console data, and audience lists. PostHog handles session recordings, funnel analysis, feature flags, and A/B testing. They do not conflict and both load via GTM, so consent mode applies consistently to both.

What happens when I exceed the 1M free events per month?

PostHog charges per event above the threshold rather than locking you into the next pricing tier. You can also set billing limits so you never receive an unexpected invoice. The pricing is published transparently on their website -- there is no sales call required to find out what you would pay at your volume.

Does PostHog work on a standard website or only on apps?

PostHog works on standard websites, web apps, and mobile apps. For a standard marketing or ecommerce site, you add a JavaScript snippet (or load it via GTM) and it starts capturing data immediately. The product analytics features -- funnels, retention, cohorts -- work on any site that has meaningful user journeys, not just SaaS products.

Can you migrate historical GA4 data into PostHog?

Not directly. PostHog captures data from the point of installation forward. Historical GA4 data stays in GA4. For most businesses this is fine -- you keep GA4 running in parallel and use it for historical comparisons while PostHog builds up its own dataset over the first few months. This is another reason we run both tools alongside each other rather than treating PostHog as a rip-and-replace.

Can you run PostHog EU Cloud for EU visitors and US Cloud for everyone else?

Yes, and it is a legitimate future-proofing approach. You set up two PostHog projects -- one on EU Cloud, one on US Cloud -- and use GTM or server-side logic to detect the visitor's country and initialise the correct project. EU user data never leaves Frankfurt; US user data goes to the US region. The operational cost is managing two dashboards. The benefit is that if the US ever introduces data residency requirements (currently no federal law requires it), your data is already partitioned correctly and the change is a configuration update, not a migration. For most medium businesses just getting started, a single EU Cloud project for all traffic is simpler and covers the compliance concerns that have actually been enforced.

How long does setup take?

For a standard site with an existing GTM container: one to two hours to install PostHog, configure the region, wire it into the existing consent setup, and define the initial custom events. A more detailed setup -- including EU cloud configuration, privacy policy updates, and a tailored event schema covering your specific conversion goals -- takes half a day. Get in touch if you want a quote for your specific site.

Related Reading