Google Analytics (GA4 through the Firebase SDK) covers web and app; Amplitude is product analytics with autocapture and event-based plans. ActivationPal, which publishes this site, is an optional third choice for a fixed install-to-purchase funnel. Compared on 15 October 2026 from vendor pages; no affiliate links.
Google Analytics vs Amplitude at a glance
| Product | Best for | Platform | Price as stated by the source |
|---|
| ActivationPal | A fixed install-to-purchase funnel for mobile apps | Native Swift, Native Android, Flutter, React Native / Expo | First 10,000 events free; unlimited apps and members on every plan (pricing) |
| Google Analytics | Funnel exploration over events and dimensions, with web and app in one tool | Web and app; events logged through the Firebase SDK on iOS, Android, Web, Flutter, Unity and C++ (Firebase docs) | Not stated on the pages used |
| Amplitude | Product analytics with autocapture, session replay and experiments | iOS Swift SDK (docs); Android, React Native and Flutter SDKs are listed in the same docs | Free: 2M events a month; Plus starts at $0 with the first 2M events free; Growth and Enterprise on custom event-based pricing (source) |
ActivationPal for mobile conversion analytics
ActivationPal answers one question: how many installs reach each onboarding step, the paywall and a purchase. It does not capture anything you did not instrument.
SDKs. Native Swift is one file with no dependencies, iOS 15+. Native Android is one Kotlin file for Android 5.0+ (Android docs). Flutter (docs) and React Native / Expo (docs) have their own SDKs. configure sends first_open and app_open automatically. The quickstart has the steps.
Instrumentation. Onboarding and paywall are one call each, with fixed event names:
ActivationPal.configure(app: "myapp", key: "ap_pk_YOUR_KEY")
ActivationPal.onboardingStep(0, id: "goal")
ActivationPal.onboardingCompleted()
ActivationPal.paywallShown("onboarding")
ActivationPal.paywallPlanSelected("yearly")
ActivationPal.paywallPurchased("yearly")
Funnel. It runs install, each onboarding step, completed, paywall shown, plan selected, purchased. Every stage counts unique devices from the install cohort, so no stage can exceed 100% of installs (events reference).
Revenue. Purchases, trials, renewals and refunds arrive through the RevenueCat webhook as rc_* events (RevenueCat setup). Superwall has its own webhook (Superwall setup), with one revenue source per app. For what the revenue side shows, see subscription analytics.
Cost. The first 10,000 events are free, and apps and members are unlimited on every plan.
Limits. The funnel is fixed. Custom events appear in the Events card but do not enter it. There is no autocapture, no session replay and no web analytics, and it counts devices, not people. To check the arithmetic on your own numbers, use the funnel calculator. The homepage shows the dashboard.
Event model and mobile SDKs
Google Analytics (GA4 and Firebase)
On mobile, events reach Google Analytics through the Firebase Analytics SDK. After you configure the FirebaseApp instance, you log events with logEvent(). The SDK defines recommended events for common app types, and you can log up to 500 different event types. There is no limit on total event volume. Event names are case-sensitive, so two names that differ only in case are two events.
A custom parameter only appears in reports after you register it under Analytics > Custom Definitions in the Firebase console. setDefaultEventParameters attaches parameters to every later event. Adding -FIRAnalyticsVerboseLoggingEnabled to the Xcode scheme prints events to the debug console, and the Events dashboard updates periodically through the day. The same page has Android, Web, Flutter, Unity and C++ versions (Firebase docs).
Amplitude
The iOS Swift SDK installs through Swift Package Manager, CocoaPods or Carthage. You create it with Amplitude(configuration:) and choose which autocapture options to switch on: sessions, app lifecycles, screen views, element interactions, network tracking and frustration interactions. Custom events are a BaseEvent passed to track.
Events upload every 30 seconds or after 30 events, and flush() sends them at once. From v1.10.0 the autocapture settings can also be changed remotely without an app update. The docs list Android, React Native and Flutter SDKs beside iOS (Amplitude iOS Swift SDK docs).
Funnel analysis compared
Google Analytics. Funnel exploration shows how many users complete each step of a task.
- Up to 10 steps, each with conditions on events or dimension values. A step cannot be defined from a metric.
- A step can be indirectly followed by the next, which allows other actions in between, or directly followed. A time limit can be set with "Within".
- Open funnels let users enter at any step; closed funnels start at the first. A user enters a funnel once, and only the first sequence counts.
- Breakdown dimension, elapsed time between steps, Top 5 next actions and up to 4 segment comparisons.
Source: Google Analytics help, funnel exploration.
Amplitude. A funnel needs a start event and at least one more.
- You choose this order, any order or exact order. Exact order allows no other steps in between.
- You can exclude users who triggered a given event between steps.
- The segment you pick applies to the starting event only.
- The A/B test funnel view and conversion drivers are on Growth and Enterprise.
Source: Amplitude funnel docs.
Revenue and subscription data
Amplitude. RevenueCat has an Amplitude integration. It sends initial purchase, trial started, trial converted, trial cancelled, renewal, cancellation, expiration, billing issue and other subscription events as rc_* events. Revenue is always reported in USD, converted from other currencies, with the original currency in the event's currency field. RevenueCat paywall events can be sent too.
To join RevenueCat events to the Amplitude SDK's users, set the Amplitude user ID to the RevenueCat App User ID. If the two differ, send $amplitudeUserId or $amplitudeDeviceId to RevenueCat as attributes (RevenueCat). Amplitude's pricing page lists Revenue metrics under Growth and Enterprise only (source).
Google Analytics. A Google Analytics or Firebase subscription integration was not confirmed from the pages used.
ActivationPal. The RevenueCat and Superwall webhooks feed rc_* events that sit beside the funnel in the dashboard.
Pricing as of 15 October 2026
Amplitude (pricing page):
- Free: 2M events a month and 10K monthly session replays, with 1 year of data access.
- Plus: starts at $0 with the first 2M events a month free, scales up to 70M events, has 2-year data retention and requires a credit card.
- Growth and Enterprise: event-based pricing on request.
- Startups with under $10M in funding and fewer than 20 employees get one free year of Growth.
Google Analytics. The pages used do not state a price, so none is given here. Check Google's pricing before you decide.
ActivationPal. The first 10,000 events are free, with unlimited apps and members on every plan (pricing).
How to choose
- Google Analytics if you want web and app in one tool and funnels built from events and dimensions, with open and closed variants.
- Amplitude if you want screens and taps captured without a call per event, funnels with ordered, any-order or exact-order steps, and session replay and experiments in the same product.
- ActivationPal if the only question is onboarding and paywall conversion in an iOS or Android app.
For what a mobile funnel should show, read funnel analysis for mobile apps. For other pairings, see Google Analytics vs Mixpanel and Mixpanel vs Amplitude.