UA Funnel Testing: What QA Engineers Get Wrong
User acquisition funnels fail in ways that standard QA misses entirely. Here's how testing for TikTok, Facebook, and Google Ads taught me to think differently.
At Boby AI, part of my QA work involves uploading and testing user acquisition funnels across TikTok, Facebook, Google Ads, Mintegral, and Pinterest. It's a part of the job most QA engineers never touch — and it revealed failure modes that standard testing completely misses.
What UA Funnel Testing Actually Involves
A UA funnel is the journey from an ad click to an in-app conversion event. The funnel looks like: user sees ad → clicks → lands on App Store → installs → completes onboarding → hits a conversion event (subscription, trial start, first session).
Each step has technical dependencies, tracking requirements, and failure points. QA's job is to verify the whole chain works — not just the app in isolation.
What Standard QA Misses
Deep link integrity: Ad platforms can pass parameters through the install URL to customize the first-open experience (show a specific onboarding flow, apply a discount, track campaign attribution). These deep links break in non-obvious ways — they work on iOS but not Android, they work on fresh installs but not reinstalls, they work with some ad platforms but not others.
Standard testing doesn't cover this because it doesn't simulate the install-from-ad flow. I had to build a separate testing checklist specifically for this.
Attribution tracking: If the install event isn't firing correctly in your MMP (Mobile Measurement Partner — AppsFlyer, Adjust, etc.), your marketing team is making optimization decisions on incomplete data. This is invisible to users but devastating for UA performance.
Platform-specific onboarding: Users coming from TikTok skew younger and have different attention patterns than users coming from Google Search ads. If you're showing them the same onboarding flow at the same pace, you're leaving conversion on the table. Testing whether platform-specific variants actually activate correctly is a QA task.
Offer validation: Campaign-specific offers (30-day trial instead of 7, 50% off first month) have to be validated end-to-end: does the correct offer appear, does it apply correctly at checkout, does it get attributed to the right campaign in the backend?
The Tracking Verification Process
When a new funnel goes live, here's what I verify:
- Install event fires: Simulate an install from the ad URL, verify the install event appears in the MMP dashboard with correct campaign parameters
- First-open behavior: Does the app correctly detect the deep link parameters? Does the right onboarding variant appear?
- Conversion events: Complete the target action (trial start, subscription). Does the event appear in Firebase? In the MMP? With the correct revenue and attribution data?
- Cross-platform consistency: Verify on both iOS and Android, on a clean test device with no existing app data or saved login state
Common Failures I've Caught
- Deep link parameters being stripped by some ad platforms — campaigns looked like they were driving installs but the custom onboarding never triggered
- Conversion events firing with incorrect currency codes — revenue numbers in dashboards were technically correct but reported in the wrong currency
- Trial offer not applying on reinstalls — users who had previously installed couldn't claim the trial offer even with a fresh campaign URL
- Facebook's in-app browser stripping certain URL parameters before the App Store handoff — intermittent attribution failure only visible on Facebook traffic
Why This Expanded My QA Perspective
Before working on UA funnels, my mental model of "the app" started at first open. Now it starts at the ad impression and ends at the 30-day retention event. Quality means the entire acquisition journey working correctly — not just the code a developer wrote.
That broader definition of QA is increasingly what separates engineers who add strategic value from those who are just running test cases. The teams that catch funnel issues before spending $50,000 on a broken campaign are the teams that QA engineers want to be on.
UA funnel testing is part of my current role at Boby AI. More about my QA approach in the blog.