What PostHog means for your app's privacy disclosures

PostHog is a product analytics tool. What it involves, whether it needs the tracking prompt, what goes on the App Store labels and the Play Data safety form, and the rejection it is usually behind.

Updated · Written from the same rules terms.gg uses to generate documents

What PostHog actually does

Product analytics with session replay and feature flags, available hosted or run on your own infrastructure.

What its job necessarily involves

These follow from what the thing is for, so they are true whichever version you installed:

What to open and check in PostHog

The settings below decide what the honest answer on the forms is, and they are specific to this SDK rather than to its category:

PostHog does not need the tracking prompt

It measures your own app rather than following people into other companies' apps, so long as you have not turned on the advertising features. So PostHog does not on its own require App Tracking Transparency. That is a statement about this SDK, not about your app: add one ad network or one attribution tool and the prompt applies to everything.

PostHog in Europe: nothing may run before consent

This is the part that gets missed, because the natural place to initialise an SDK is the moment the app launches, and the natural place to ask for consent is a screen that appears after it. Reading or writing anything on the device for product analytics needs agreement first, and that comes from the ePrivacy rules rather than the GDPR, so picking a different legal basis does not get you past it.

PostHog in California: probably not a sale

PostHog does its job for you rather than for its own commercial purposes, which normally keeps it a service provider rather than a sale. That depends on your contract saying so, and the standard terms usually do.

PostHog on the App Store privacy labels

Apple asks what your app collects, and your app collects whatever its SDKs collect. PostHog is generally declared under Analytics, alongside whatever the rest of your app does for its own reasons.

PostHog on the Google Play Data safety form

The form asks two things the labels do not: whether data is shared with anyone else, and whether it is encrypted in transit. For this SDK the honest answer is usually collected but not shared, because it processes on your behalf.

Check PostHog's own privacy manifest for PostHog

Since 2024 Apple has required third-party SDKs on its list to ship a signed privacy manifest declaring what they collect and which sensitive APIs they use, and your app's combined manifest is built from them. That file is the authoritative answer for PostHog, it comes from PostHog, and it changes when they ship.

The rejection PostHog is usually behind

Session replay was enabled for debugging and never masked, so the recordings contain fields nobody meant to store.

What to put in the privacy policy about PostHog

Keeping it true after launch

A legal page stops being true the moment the product moves past it, usually by adding a payment provider, an analytics SDK or a sign-in. No store re-checks your pages against your build, so the drift is yours to notice.

Common questions

Do I need a privacy policy just because I use PostHog?

Yes, and you needed one anyway. Both stores ask for the URL before a listing goes live, whatever the app does. The SDK changes what the policy has to say, not whether you need one.

Does PostHog put me over the line into tracking?

Not by itself. The question is always about your app as a whole, so it is the other things you installed that decide the answer.

Does removing the SDK fix a rejection?

Usually yes and it is the fastest route, but only if you also correct the labels and the form. Reviewers compare what you declared against what the binary contains, and a stale declaration fails on its own.