# Tool fit: who each tool suits, the first constraint to test, and when to skip it

Use this after step 3 of the procedure has produced at most two candidates. Each entry gives the job the tool fits, the constraint most likely to fail the hard-requirement check, a trial task the intended operator runs, and the condition for dropping it. Plan facts were checked on 2026-10-17; prices and allowances are in [billing-meters.md](billing-meters.md).

## Contents

- How to read an entry
- GA4
- Mixpanel
- Amplitude
- PostHog
- Heap
- Pendo
- Statsig
- Warehouse-native options
- Replacing GA4 on the web: Plausible and Matomo
- One product tool without GA4
- Shortlists by stage
- Volume bands

## How to read an entry

- "Fits" is a starting hypothesis about the operator and job, not a rule about job titles. Engineers can run Mixpanel; PMs can run PostHog.
- "First constraint" is the requirement that most often removes the tool in practice. Test it before anything else.
- "Trial task" is done by the person who will run the reports after purchase, not by the implementer or the vendor.
- "Skip if" is a hard stop.

## GA4

- Fits: acquisition, landing pages, campaign to verified outcome, Google Ads key events and audiences, app measurement through Firebase.
- Strengths worth keeping: linking Google Ads gives Ads conversions built on GA4 key events, remarketing audiences and Ads data in GA4 reports. Removing GA4 breaks these unless a replacement is built first.
- First constraint: account and workspace questions. GA4 counts users through its reporting identity (blended, observed or device-based); the option changes reported user counts, not collection. A workspace with three members is three users unless modelled elsewhere.
- Other constraints: explorations and funnels keep 2 or 14 months of event data on standard properties. Large (standard) and XL (360) properties are limited to 2 months, and older event data is deleted when a property reclassifies. Standard daily BigQuery export is limited to 1 million events a day; a property that consistently exceeds it has its daily export paused, and missed days are not reprocessed. Streaming export has no volume limit.
- Report limits that most often push a recurring question off GA4, checked on 2026-10-17. Each shows in the report's data-quality indicator; record it with the question.
  - Thresholding: rows can be withheld when a report includes demographics or search queries. Source: support.google.com/analytics/answer/9383630.
  - `(other)`: when a table exceeds its row limit, less common rows are grouped into `(other)`; 360 limits are higher. Source: support.google.com/analytics/answer/13331684.
  - Sampling: a query over the property's quota (10 million events on standard, up to 1 billion on 360) runs on a sample. Source: support.google.com/analytics/answer/13331292.
  - A recurring question that hits one of these goes to the BigQuery export or a product tool. A one-off hit is solved by a narrower date range or fewer dimensions.
- Regulated data: Google offers no BAA for Analytics. When PHI or HIPAA applies, GA4 is never the default for authenticated journeys or care pages; see "Regulated data and BAAs" in [hard-requirements.md](hard-requirements.md).
- Not a reason to leave: "we need a funnel". GA4 funnel explorations exist. Name the specific limit instead.
- Trial task: follow one acquisition cohort through verified signup and first value, then reconcile with application records.
- Skip as the only tool if: the same account question needs a manual export or SQL join every week and nobody owns it.

## Mixpanel

- Fits: a PM or growth owner who changes segments and windows weekly and shares repeatable funnels and retention reports.
- First constraint: account analysis. Group Analytics is a Growth or Enterprise add-on, not on Free.
- Other constraints: Free allows 5 saved reports per seat; scheduled warehouse export (Data Pipelines) is a paid add-on; no hard billing cap on Growth.
- MCP note: the Mixpanel MCP server includes write tools (dashboards, Lexicon, cohorts, experiments, flags) and documents no read-only mode. Free and Growth accounts created after 1 August 2026 have MCP on by default. Include this in the access review.
- Trial task: the operator builds an onboarding funnel, explains the denominator, changes the conversion window and repeats it a week later without help.
- Skip if: the plan the company will keep cannot support the account report or the required data exit.

## Amplitude

- Fits: several teams reusing governed definitions across analysis, experiments and follow-up workflows.
- First constraint: what the plan includes. Experiment results are excluded on Free and Plus. Group behaviour analysis is listed as available from Plus, while the Accounts (Group) package is listed for Growth and Enterprise. Get in writing which one the account report needs.
- Other constraints: Free allows 10 saved charts per organisation and 1 year of data access. The pricing page labels Growth and Enterprise event-based while the MTU guide says all plans support MTU pricing; get both quoted.
- MCP note: MCP is on by default for all users; admins can restrict it under the organisation's MCP settings. Read and write are RBAC actions, Use MCP (read) and Use MCP (write), set per project in Org Settings > Role Management. Every role grants read, and Member, Manager and Admin also grant write by default; the actions override admin status. There is no read-only switch at connection time, so a read-only connection needs an admin to assign a role with read and without write first.
- Trial task: define an onboarding population, reproduce its membership independently, and use it in the next planned workflow on the plan that will be kept.
- Skip if: the demonstration depends on capabilities available only during the trial or the startup year.

## PostHog

- Fits: engineers who move between analytics, replay, flags, experiments and error investigation around releases.
- First constraint: the bill at the real identity mix. Identified events carry an add-on price; backend SDKs send identified events by default; group analytics bills every identified event once subscribed.
- Other constraints: separate meters per product; billing limits stop ingestion and the excess is lost; Free retains data for 1 year.
- Flags at the limit: when the organisation exceeds its Feature flags & Experiments quota, flag evaluation pauses org-wide and flags fall back to code defaults in production. For the engineer-led use case this is the most dangerous effect of a cap. Never cap flags without a tested default for every live flag.
- Self-hosting: PostHog describes self-hosted deployments as officially unsupported, with no paid support or guarantees, and all paid-plan features are Cloud-only. Treat self-hosting as an operating commitment with a named owner, not a saving.
- Trial task: take one known release, identify the exposed population, inspect its funnel and review recorded sessions. The engineer and the PM explain the same result.
- Skip if: consolidation adds products nobody owns or retires no existing subscription.

## Heap

- Fits: teams asking new interface questions after a release, using interactions that were already captured.
- First constraint: packaging. Plans are Free, Growth, Pro and Premier. Growth is self-serve with 12 months of history, unlimited users and reports and CSV export, but no account analytics, Heap Connect or replay. Account analytics starts at Pro; Heap Connect is a Pro add-on and included in Premier; replay is an add-on on Pro and Premier.
- Other constraints: Free keeps 6 months of history and up to 10,000 sessions a month. A busy marketing site consumes the session meter.
- Autocapture limit: a captured click cannot recreate a backend outcome that was never recorded. A click on Import and a completed import stay separate events.
- Trial task: define an interaction retrospectively over controlled traffic, compare it with the authoritative completion event, then change the page structure and see what breaks.
- Skip if: account analysis, replay or warehouse export falls outside the package the budget allows.

## Pendo

- Fits: one team that both measures feature adoption and maintains in-app guides.
- First constraint: the Free ceiling. Above 500 monthly active users, reports switch to a 500-visitor sample and creating guides, NPS surveys and segments is blocked. Free has no API or third-party integrations.
- Trial task: find customers who have not used a key feature, target a guide with exclusions, and judge the downstream task completion, not whether the guide appeared.
- Skip if: reporting is the only need, or nobody owns retiring stale guides after interface changes.

## Statsig

- Fits: engineering teams whose releases run through flags and experiments.
- First constraint: what is metered. Exposures and log events bill. Flag and config checks are unlimited, except that a check on a partial-rollout gate with Metric Lifts enabled logs a billable exposure; include those exposures in the forecast. Warehouse Native is an Enterprise deployment, separate from the cloud plans.
- Ownership: Amplitude announced on 5 May 2026 that it will take on Statsig's brand and customers and will maintain the cloud and warehouse platform. Confirm the contracting entity, support and roadmap in writing.
- Trial task: run an A/A test, then one real experiment on a known flag, and reconcile assignment, exposure and outcome counts before reading lift.
- Skip if: the team cannot own reliable assignment and exposure data.

## Warehouse-native options

See [warehouse-native.md](warehouse-native.md). Short version: Mitzu for product exploration on existing warehouse tables, GrowthBook when analysis and experiments should share warehouse metric definitions, Statsig Warehouse Native when experimentation is the main job. Each needs a named owner for the models.

## Replacing GA4 on the web: Plausible and Matomo

Use when the request is "GA4 alternative", "replace Google Analytics" or "privacy-friendly analytics" for a website, not a product.

- Inventory five responsibilities first: collection, reporting, identity, ad connections and business-data reconciliation. A replacement can take one over while GA4 keeps another. Record which tool owns each.
- Fix collection before switching. If a form event fires on the click instead of the successful submission, a new destination keeps the error.
- Plausible: fits aggregate traffic, content and goal reporting. It creates no persistent identifier; its daily visitor hash rotates every 24 hours, so it cannot recognise a visitor across days or devices. Skip it for cross-day retention, returning-visitor or identified-user questions. Sources: plausible.io/data-policy, plausible.io/docs/goal-conversions.
- Plausible commercial facts, checked on 2026-10-17: no free plan, a 30-day trial; plans are Starter, Growth, Business and Enterprise. Funnels, user journeys, custom properties and ecommerce revenue attribution start at Business. Skip Plausible below Business when a decision needs a funnel. Source: plausible.io (pricing section).
- Matomo: fits when control over deployment is the requirement. Matomo Cloud is hosted in Frankfurt, priced by monthly hits (page views, events, downloads, outlinks, site searches and content tracking requests all count), with a 21-day trial after which an unpaid Cloud site is deleted within a few days. Matomo On-Premise is free to download, with paid plugins, and leaves hosting, updates, backups and performance with your team. Choose On-Premise only with a named operator and a restore test passed in a non-production environment at peak collection volume. Sources: matomo.org/pricing, matomo.org/what-is-on-premise, matomo.org/faq/cloud/whats-included-in-the-matomo-cloud-21-day-free-trial, checked on 2026-10-17.
- Ad connections: neither replaces Google Ads conversions or audiences built on GA4 key events. Name the replacement path, or keep GA4 for that responsibility.

## One product tool without GA4

Recommend a product tool alone, with no GA4, only when all hold:

- No Google Ads conversions or audiences are built on GA4 key events, or a named replacement path exists and has been tested (routes and test in "Google Ads dependency" in [hard-requirements.md](hard-requirements.md)).
- Acquisition questions are answered by first-touch properties captured at signup, and the campaign persistence setting is checked. In Mixpanel's JavaScript SDK, UTM parameters persist as super properties by default; `stop_utm_persistence: true` is the documented modern behaviour, and first-seen values are stored as `initial_utm_*` user properties. Source: docs.mixpanel.com/docs/tracking-methods/sdks/javascript.
- No scheduled report, BigQuery job or other consumer reads GA4.
- The product tool covers web traffic reporting the founder or marketer needs. PostHog includes web analytics with product analytics; check the equivalent for other candidates.

When this holds, one tool avoids the dual-tracking cost in [two-tools-and-dual-tracking.md](two-tools-and-dual-tracking.md). Keep the product SDK's anonymous site capture priced on its meter before relying on it for acquisition.

## Shortlists by stage

These describe the work, not headcount.

- Before repeat usage is defined: one owner, one destination, a handful of confirmed outcomes. Usually GA4 plus SQL on a read replica, or one free product tool. Do not compare six tools.
- When product and growth work repeats weekly: test whether the decision-makers can build and reuse reports themselves. Mixpanel or Amplitude for PM-led teams; PostHog for engineering-led teams.
- When several teams depend on the data: permissions, change management, account analysis, export and recovery from bad instrumentation become hard requirements. Ask for evidence that each exists in the proposed plan.
- When a data team maintains warehouse models that already join product, billing and CRM: test a warehouse-native candidate against the hosted tool plus export.

## Volume bands

Volume changes the shortlist, not only the bill. Figures checked on 2026-10-17; re-read the live pages.

- Under 1M events a month: every free tier in this file fits the volume. Decide on capability (step 4) and operator (step 3).
- 1M to 20M events a month: published tiers apply. Price with [billing-meters.md](billing-meters.md).
- Above 20M events a month: Mixpanel self-serve tiers stop at 20M, Amplitude Plus at 70M events or 700,000 MTUs, and Growth and Enterprise are quoted. PostHog publishes per-event rates above 250M. Request quotes from every candidate on the same normal, growth, fault and month-13 forecast. Sources: mixpanel.com/pricing, amplitude.com/pricing, posthog.com/pricing.md.
- GA4 standard above about 1M events a day: the standard daily BigQuery export pauses. Filter events or streams, use the streaming export (USD 0.05 per GB, best effort), or quote Analytics 360. Sources: support.google.com/analytics/answer/9823238, support.google.com/analytics/answer/9358801.
- Backend-heavy producers: check batch and per-identity limits before choosing. Mixpanel's Import API takes up to 2,000 events and 10 MB uncompressed per request, about 30,000 events a second per project. Amplitude HTTP V2 throttles any user or device above 30 events a second (pause 30 seconds on a 429), and Growth and Enterprise requests must stay under 1 MB and 2,000 events. A backend job sending many events under one system ID hits the Amplitude throttle first. Sources: docs.mixpanel.com/reference/import-events, amplitude.com/docs/apis/analytics/http-v2.
- Per-event fees dominate and warehouse models exist: when the forecast licence at growth volume exceeds the warehouse-native cost lines in [warehouse-native.md](warehouse-native.md) and a named owner maintains the models, add a warehouse-native candidate to the shortlist.
