Underwriting · V-track · 31 July 2026

GA4 Symptom-to-Root-Cause Diagnostic

Self-serve marketers and small-business owners who migrated to GA4 without a consultant see wrong numbers and cannot tell why. Events fire in DebugView but never reach reports, traffic drops off a cliff after migration, conversions double-count. Google's own docs contradict each other and the answer is buried in forum threads. A product must take a plain-English description of the symptom and return ranked likely cau…

62 ± 3.1 BUILD
REWORK
PROVE
BUILD
rubric w3.0-20260804 · interval ±3.1 at 95% (n=10, sd=1.6, measured 2026-08-04)
Stages run20
Cost to produce$0.00
Wall clock7 min
Confidence76/100

What an analysis cost to produce belongs beside it. A reader deciding whether to trust a verdict is entitled to know whether it came from twenty-six stages or one, and nothing else in this category will tell them.

every charge, every rebuttal, every ruling

The case against it

ChargeRebuttalRuling
Free LLM substitution kills the value propositionCONCEDED — No rebuttal available in the record. Nothing in the candidate file addresses why a marketer would pay $12/mo instead of pasting the same symptom into partial — Real and unresolved for the 'paste a paragraph, get 5 causes' spec — but the buyer being targeted is someone whose symptom has sat unanswered on a forum for months, meaning generic answers a
No property access means unverifiable, generic-sounding outputCONCEDED — The incumbent_weakness note claims competitors dump generic 20-100 point checklists instead of ranking causes for the specific typed symptom, but thispartial — Upheld against the specced 60-second one-paragraph form; dismissed as a structural bar, because 6-10 structured follow-up questions (gtag vs GTM, consent mode default, internal-traffic filte
Data moat requires a feedback loop that transactional users won't provideCONCEDED — The candidate's own data_moat section concedes this directly.upheld — True and conceded by the candidate itself — but defensibility is 5% of this score and moats are year-two artifacts. Upheld on merits, near-zero weight on the decision.
Problem is episodic, not recurring — kills subscription economicsCONCEDED — No rebuttal in the record. No churn/retention data, no evidence of recurring symptom generation per account.upheld — Correct, and it kills the $12/mo framing outright. It does not kill the business: the smallest_offer is already a $15 one-time transaction, which is the pricing model that matches the buyer'
Buyer often doesn't know their numbers are wrongCONCEDED — No rebuttal. The buyer_population estimate already applies a self-serve filter but does not address awareness/detection rate, which would shrink the ppartial — Deflates the 900k population claim, which was fiction anyway. Irrelevant to the 30-day question because acquisition is self-selecting: you only ever talk to people who already posted the sym
High-intent search channel is the most saturated one, and it's the only scalable onePartially answered. Search is conceded as saturated in the channels data itself, but the geographic_gap data shows Japan, Germany, and Brazil have zerpartial — Search is conceded lost. But Fiverr/Upwork gig listings and unanswered symptom threads on Shopify Community and r/GoogleAnalytics are named, uncontested-by-tools, zero-cash channels sufficie
Price point collides with a race-to-bottom marketplace, not a subscription marketCONCEDED — No rebuttal. Fiverr/Upwork is listed as a direct competitor at the exact price point undercutting the subscription.partial — Upheld against subscription; dismissed as an objection overall — a live $15-100 Fiverr gig market is the strongest payment evidence in this file, and the operator can sell into that market o
Refund/dispute load is unbounded and unautomatable at this priceCONCEDED — No rebuttal in the record beyond acknowledging the roadmap flags this as a permanent human task.partial — At $25 one-time with a stated 'wrong cause, full refund' policy, refunds are cheap and double as the outcome-labelling loop the moat needs. Becomes real only above a few hundred orders/month
Reputational blowback in the same forums used for acquisitionCONCEDED — No rebuttal in the record. No mitigation strategy, moderation plan, or evidence against public misdiagnosis risk is described.dismissed — Low probability and self-mitigating — ranked hypotheses with 'check this to confirm' framing is how every competent analytics answer on those forums is already written. Being wrong in public

A separate agent argued against this idea, a second answered, a third ruled. 8 of 9 charges were conceded rather than defended. Published in full because a score with the objections removed is a advertisement, and because the objections are usually more useful than the verdict.

dimension by dimension

How it scored

DimensionScoreReasoning
D158Wrong revenue numbers genuinely hurt ad-spend decisions, but the pain is episodic and many owners tolerate bad data indefinitely rather than pay to fix it.
D278Money visibly changes hands today: $15-100 Fiverr GA4-fix gigs, $10/mo Tag Inspector, $150-500/mo Elevar, $299-1,499/mo Trackingplan — the market pays for GA4 correctness
D358100 buyers this month is achievable via unanswered symptom threads on Shopify Community, GA Help Community and r/GoogleAnalytics plus a Fiverr gig listing — but the answe
D415Public knowledge, no access, no data asset until an outcome-feedback loop exists that the candidate concedes may never fill — a weekend clone by any of twelve incumbents.
D590Flask form + Stripe + retrieval over a hand-written KB is three days on his existing stack; the real cost is authoring 30-50 GA4 failure-mode entries, not code.
D635$15 one-time is the honest model, which means ~$15 AOV, 100% churn by design, and revenue that scales only with founder-hours of forum posting; the $12/mo subscription in
D725One-off $15-40 diagnostics into a saturated English market plus manual channels realistically caps in the low four figures monthly before it needs a productized-service p
D845Stack fit is perfect and the build is trivial, but the entire product value is GA4/GTM domain judgment, and nothing in the record establishes he has it — without that, th
D985A Fiverr gig plus three forum replies with a paid link can take a stranger's $25 inside 14 days; nine days is credible because there is nothing to build before the first
demand_test—
named, priced, and dated

Who already does this

CompetitorPricingFundingLaunchedOverlap
GA4 Auditornot listed, freemium reportbootstrappedunknownexact
GA4Audit.ainot listed (connect GA4 required)bootstrappedunknown, claims 1,200+ ageexact
GAfix.aifree tool + paid tiersbootstrapped2025-2026exact
GA Auditorfree audit, 2 minbootstrappedunknownexact
GA4 Auditor (Swipeinsight)not listedbootstrappedunknownexact
Trackingplan$299–$1,499/mo, free tier for 25k visitsVC-backed (Spain-based)2021partial
ObservePointstarts ~$598–$1,500+/mo, enterprise custom quoteVC-backed, established enterprise vendorpre-GA4 (Adobe Analytics epartial
Kissmetrics (GA4 audit guide/product)free trial, paid tiers undisclosedestablished companyunknownadjacent
Elevarfree initial audit, $150-500/mo managed trackingfunded startuppre-2023adjacent
AuditTagslow-cost Shopify-focused, cheaper than ObservePointbootstrapped2025exact
Tag Inspector$10/month, browser-based manual scanningunknown—partial
Fiverr/Upwork GA4 audit freelancers$15-$100 one-time gig, some multi-day deliveryn/a (marketplace)ongoing since GA4 rolloutpartial
Free browser debuggers (Omnibug, Analytics Debugger, GA4 Live Debugger, Adswerve dataLayer Inspector+)freen/avarious, 2020-2024adjacent

Where the buyers actually are

ChannelWhy it reaches them
Shopify Community forum (community.shopify.com)
Google Analytics Help Community / official product forum
r/GoogleAnalytics, r/analytics, r/PPC
Fiverr/Upwork 'GA4 fix' gig listings
Google search: 'GA4 conversions counted twice', 'GA4 events not showin
what stands in the way

Regulatory gates

GateFinding
G1No concrete legal violation. Diagnostic advice about GA4 configuration does not violate platform ToS, consumer protection law, or data regulation. Google does not prohibit third-party GA4 tr
G2Core loop is algorithmic: ingest symptom description, return ranked causes with diagnostic steps. No per-customer service calls, no manual review of outputs, no physical fulfilment. Runs as
G3Google Analytics consulting, GA4 migration services, and diagnostic tools are paid markets. Firms like Measure School, Analytics Mania, and boutique GA4 consultants charge for exactly this k
G4Thin MVP: Flask backend with symptom-to-cause mapping (hardcoded decision tree or simple LLM prompt), React frontend form, Postgres to store symptom logs. No novel research needed. GA4 troub
G5Multiple reachable channels: GA4 Reddit communities, Google Analytics Slack groups, marketing forums (GrowthHackers, Indie Hackers), GA4 migration Slack channels, small-business owner commun
written before the outcome is known

The pre-registered test

TermValue
days14
offerSell the diagnostic as a manual service before writing any code. (1) List a Fiverr gig: 'GA4 Diagnostic — I'll tell you WHY your numbers are wrong. No account access needed. Ranked root causes + exact setting to check fo
price25
metricPaid orders from strangers, plus post-delivery confirmations that the named cause was correct
channelFiverr gig listing (GA4 category) + 30 hand-picked unanswered symptom threads on community.shopify.com, Google Analytics Help Community, and r/GoogleAnalytics
thresholdKILL unless ≥4 paid $25 orders in 14 days AND ≥2 buyers confirm the named cause was the actual cause AND ≤1 refund. Fewer than 4 orders = no reachable demand at this price. 4+ orders but <2 confirmed-correct = the free-L

Recorded at the moment the verdict was issued and not editable afterwards. If this is launched, the result lands on the ledger whether it passes or fails.

and what moves it forward

Where this idea is

Phase nowValidating — A pre-registered test is live and running.
What you do hereStand up a real offer and drive traffic to it. A test nobody saw resolves VOID, not FAIL — and VOID teaches you nothing.
To leave this phaseThe frozen test resolved PASS, or you are deliberately overriding a FAIL with a stated reason.
Gate statusThe test is VOID — registered and never run. That is not a failure and it is not a pass; it is an absence of evidence, and advancing on it means advancing on nothing.
Next phaseBuilding — Committed. The thing is being built.

This gate is NOT met. Advancing an idea needs its link — the one handed back when it was submitted. Founder-owned ideas are advanced from the console. See the whole pipeline.

What to do in this phaseWhat it provesFrom which part of the analysis
Stand up a real offer that can take moneyThe offer exists and is purchasable.demand_test
Drive traffic that did not come from youThe test was actually run.demand_test
Reach KILL unless ≥4 paid $25 orders in 14 days AND ≥2 buyers confirm the named cause was the actual cause AND ≤1 refund. Fewer than 4 orders = no reachable demand at this price. 4+ orders but <2 confirmed-correct = the free-LLM charge is upheld and there is no product, only a worse UI on a prompt. Paid orders from strangers, plus post-delivery confirmations that the named cause was correct before the deadlineThe frozen threshold is met, which is the only thing that advances this phase.demand_test

Every step traces to a field this idea's own underwriting produced — not generic best practice, which is free everywhere. 0 of 3 complete. Mark them off in the console.

and what did not complete

How this was produced

MeasureValue
Wall clock7 minutes
Stage that did not complete{'why': 'shape_drift_recovered', 'stage': 'ARBITER', 'detail': 'demand_test lifted from arbitration->dimensions by ops/recover_tests.py 2026-08-04; value unmodified, score untouched', 'recovered': True}

A verdict produced by 22 of 23 stages is not the same artefact as one produced by all of them, and which stages failed was recorded on every run and shown nowhere until now. If a stage that feeds a section died, the section came from somewhere else or nowhere — and you are entitled to know which is in front of you before you act on it.

What kind of business this is

demand test days14

The money

price pointanchor: Tag Inspector's $10/mo floor and the $20-100 one-time Fiverr gig price for a single fix; monthly: 12; rationale: With a $10/mo paid tool already established as the floor and free full-audit competitors on every side, a subscription can't clear much above that floor without a clearly superior diagnostic depth; $9-15/mo is the only defensible subscription band, or a $15-25 one-time diagnostic fee matching the low end of the Fiverr gig market it's displacing.
current spendamount: $20–$150 one-time, or $0 (free tools); source: Fiverr listings show GA4 audit/fix gigs priced from $20 to $100 (e.g. one seller offers a GA4 setup/audit fix starting from $20, another audits/fixes GA4 tracking for $85, another for $100), while SEO/ad-audit-adjacent gigs commonly range $30-75; several dedicated GA4 auditor tools (GA4 Auditor, GAfix.ai, GA Auditor) offer free audits, and the cheapest paid discrete tool (Tag Inspector) is $10/mo.; on what: Fiverr/Upwork GA4 audit gigs and free browser debuggers/audit scanners are the nearest substitutes people already pay for or use instead of paying
funding routereinvest
revenue modelhybrid
churn monthly pctwhy: This is a symptom-fix tool, not an ongoing monitoring product — once the user's GA4 issue is diagnosed and resolved, there is no recurring reason to keep paying (unlike Trackingplan/ObservePoint, which monitor continuously). One-off-need self-serve tools in this category should be expected to see high monthly churn similar to freelance-gig-replacement products; this figure is inferred from the nature of a 'diagnose once and leave' use case, not from any published churn data for this specific product category.; value: 22
cash to first dollar150
marginal cost per unitvalue: 0.03; components: Per-diagnostic LLM inference call (prompt + ranked-cause generation) is the dominant cost; no GA4 property connection, no persistent data storage per query, and no human-in-the-loop, so marginal cost is essentially one API call's token cost on a mid-tier model plus negligible Postgres/Vercel overhead. This is inferred, not sourced — no competitor discloses unit economics.

What has to be built

wedgesegment: Solo marketers barred from GA4 OAuth; evidence: Confirmed live: GA4Audit.ai's own homepage says 'Connect your GA4, ask a business question, get a focused audit' and GAfix.ai requires you to 'Securely link your Google Analytics 4 account' before it will 'uncover tracking issues.' Meanwhile the exact symptom this segment has is posted verbatim, unanswered, across Shopify Community, Adobe Experience League, and Russian-language forums (Habr) with no tool addressing it directly.; why they switch: User already knows the symptom (event fires in DebugView but reports show zero, traffic cliff post-migration, doubled conversions) and either can't grant OAuth (agency owns the property, privac
data moatIf the feedback loop ('this fixed it' confirmation) is actually built and used, the accumulating dataset of symptom-cause pairs validated by real fix outcomes is something no competitor scraping Google's docs or running a generic LLM wrapper has — that's a real moat. Without that feedback loop, there is no moat: the underlying knowledge is public, contradictory, and equally scrapeable by any of the twelve listed competitors or a $20/mo Chrome extension.
componentsSymptom intake form + structured follow-up questions: risk: low; units: 2; Core GA4 failure-mode knowledge base (initial curation of ~80-150 symptom→cause→check entr: risk: high; units: 6; LLM retrieval/ranking pipeline (RAG over KB, prompt engineering, output formatting): risk: med; units: 3; Outcome feedback capture ('did this fix it') + storage: risk: med; units: 2; Auth + Stripe paywall/metering: risk: low; units: 2; Results page + frontend polish: risk: low; units: 2; Admin panel to edit/add KB entries: risk: low; units: 2; Drift-detection cron (monitor GA4 docs/release notes/help center for changes): risk: med; units: 2; Landing page + copy: risk: low; units: 1; Infra setup (Supabase s
total units23
smallest offerwhat: No-login web form: user pastes their symptom in plain English, pays once, gets a ranked list (curated GA4 failure-mode knowledge base + LLM) of the 3-5 most likely causes with the exact GA4/GTM setting or DebugView check for each — no property access, no crawl, delivered in under 60 seconds; price: 15; format: software; days to build: 3
wedge strengthworkable
hardest unknownWhether a plain-English symptom description alone (no property access, no tag export, no DebugView payload) contains enough signal to rank causes more accurately than a user just asking ChatGPT the same question — most GA4 failures (sampling, consent mode, attribution model shifts, filter misconfig, cross-domain issues) look identical from a text description and only diverge once you see actual data. If the ranked output isn't materially better than free-text LLM guessing, there's no product, just a worse UI on top of a prompt.
days to first dollar9
the verdict is not the end of the process

If you decide to do this

StepWhat it meansWhere it happens
1 · Read the case against it firstCharges the arbiter upheld are the ones to answer before committing. If an upheld charge is fatal for you, the verdict is not.on this page
2 · Commit the pre-registered testThe test is already written: Paid orders from strangers, plus post-delivery confirmations that the named cause was correct at KILL unless ≥4 paid $25 orders in 14 days AND ≥2 buyers confirm the named cause was the actual cause AND ≤1 refund. Fewer than 4 orders = no reachable demand at this price. 4+ orders but <2 confirmed-correct = the free-LLM charge is upheld and there is no product, only a worse UI on a prompt.. Committing freezes it with a date, and it cannot be edited afterwards.promote it →
3 · Stand up the offerA landing page, a price, and an instrumented link. Nothing is proven until somebody who does not know you is asked to pay.ventures →
4 · Run distribution and let it resolveThe test resolves mechanically on its deadline: actual against threshold, no judgement. A test never distributed resolves VOID rather than FAIL — inaction is not evidence.automatic, daily
5 · The outcome grades this verdictWhatever happens is written back against this prediction and scored. That is what makes the next verdict better, and it is the only honest basis for ever claiming an accuracy.the ledger →

The evidence supports building it, and the objections below were answered rather than conceded. Steps 2 and 3 open the operator console, which lives under this same domain at /account and requires a log-in — the public record is readable by anyone, and committing a prediction against it is not. Step 5 happens automatically: this prediction is already frozen with its score, its confidence, and every dimension as it stood, waiting for an outcome to grade it against.