Hypertune · brief for Kevin

hypertune.gg: measurement and dashboard brief for Kevin

Measurement and dashboard · written 20 September 2026, reissued 21 September

From Vinson. Written 20 Sep 2026, reissued 21 Sep after the review call with Austin, with items 2a and 2b added the same evening once Search Console and GA4 were connected. Everything below is agreed with Austin. The speed items from the first version are out: the deferred tags, hero video loading and animation loading are live on the test site (GTmetrix C to B, blocking time from about 1 s to 101 ms), and the remaining speed housekeeping will come back as a separate, smaller note after that release ships to production.

Order matters here. Item 1 outranks everything else, including any speed work.

Tracking

1Do the tracking parameters reach Stripe? (first priority)

Traced 21 Sep: /onboarding?plan=year&utm_source=x&gclid=y redirects to /sign-up?plan=year&utm_source=x&gclid=y&from=onboarding, so plan, campaign tags and click IDs reach the sign-up address. Please confirm whether they survive Clerk account creation into the Stripe customer or subscription record (metadata or equivalent), including fbclid and rdt_cid. Austin believes some reach Stripe; we need to know which, and where they are dropped if any are. If they do not survive, this is the first fix: without it no button change can be measured and no paid campaign can be attributed. Please reply with what you find either way.

2Events between the click and the purchase

Today only cta_click fires before the purchase event; nothing records what happens in between. Add: sign-up page viewed (with ms since click), sign-up started (method: email, Discord, Google), sign-up failed (with the error), sign-up completed, plan selected, purchase completed. Same label convention as cta_click (data-ht-label: hero-download, showcase-signup, mid-signup, pricing-annual, promo-annual, footer-signup, pricing-discord). Also confirm the checkout pages still fire the ad-pixel purchase events now that the pixels load late on the homepage.

2a. GA4 purchase event: missing before 12 Sep, about 60% since

Checked in GA4 (property 551826398) on 21 Sep. The purchase key event recorded zero from 1 to 11 Sep, then 28 to 43 a day from 12 Sep. Stripe runs at roughly 56 new paying subscriptions a day over the same period, so GA4 is seeing about 60% of purchases. sign_up (2,402) and begin_checkout (2,963) look complete, so the gap is at the purchase step only. Please find: what changed on 12 Sep that made it start firing; which checkout path or plan does not fire it (the Stripe-hosted page, the yearly promo path, the trial path, Discord sign-ins); and whether the late-loading pixel change means the event fires before the tag exists. Google Ads will import conversions from this event, so it has to be complete before any campaign runs. Reply with the before-and-after count against Stripe for one day.

2b. 772 Unassigned sessions in GA4

Same 20-day window: 772 sessions with channel "Unassigned" and a 5% engagement rate, against 40% to 70% for every other channel. That pattern is usually the tag firing on a redirect or callback page (/sign-in/sso-callback, /sign-up/sso-callback, /device-challenge, the /onboarding to /sign-up hop) and starting a new session with no referrer. Please identify the page and either stop the tag firing there or pass the referrer through, so those sessions attach to their real source. Related, low effort: no sitemap is submitted in Search Console; submit https://hypertune.gg/sitemap.xml under the hypertune.gg domain property.

Dashboard

3Split Trialing into real trials and comps

The Trialing tile shows 361 with the caption "7-day trials are still being created despite the Aug 1 shutoff, a trial checkout is live somewhere". Most of the 361 are year-long creator and lifetime comps; the real 7-day trial count is about 100. Show the two separately (7-day trials vs comps), and replace the caption: the trial is offered on purpose through the "Try for free" link, and the change date was 5 Aug, not 1 Aug.

4Cash Collected does not tie to Stripe

For 22 Aug to 21 Sep the tile shows $52,755 ($51,907 after $849 refunded). Stripe for the same range shows $53,409 gross volume and $49,159 net volume. Please reconcile: which Stripe objects and which timestamp the tile sums, how refunds and disputes are treated, and why the gross differs by about $650. The tile should state its definition in the caption and match one of Stripe's two figures.

5Owed figure

Austin has flagged the money-owed figure at the top of the page as wrong and is raising the detail in Linear. Treat that ticket as the spec.

6The 18 Sep defect list stands

Nothing else from the 18 Sep list has changed: single-cohort LTV, two "paying" totals on one page, funnel order and channel totals, past-due caption, traffic page period buttons, deal start and end dates, live-count deltas at zero. One addition: the Games They Play panel is 84% support-ticket text and 16% Discord messages, with only 11 of the 102 people linked to a paying account; relabel it as games named in support tickets, or restrict it to paying customers and print the sample size.

Integrations (Austin's own requests from 19 Sep, unchanged)

7Search Console and Google Analytics into the platform

Pull Search Console into the platform daily. Also GA4. Note the history available: the GSC domain property was verified on 27 Aug and has data from that date only (no 16-month back-fill exists), and GA4 has data from 1 Sep. Both are installed (GA4 tag G-MHWGLY4TPD; GSC domain property hypertune.gg). Vinson has API access to both through the hypertune-seo-data Google Cloud project if you want to reuse it rather than create your own. If direct API pulls are awkward, Windsor.ai (about $25 a month, connectors for GSC, GA4 and Facebook Ads) landing into a table you own is an option; your call on the method. What we need out of it: branded vs generic search volume, ranking position of the sceptical benchmark articles, and the backlink record from the press run.

8Google Ads and Clarity

When the Google Ads account is confirmed, link it to the GA4 property so conversions and audiences flow. Clarity is installed and recording; nothing needed unless a user must be added.

Not in this brief

Header button, pricing card, widget, logos, hero poster, contrast and accessibility fixes, sign-in screen: Kamil's, in the other brief. Remaining speed housekeeping (fonts, the two FPS PNGs, homepage bundle split, www redirect, cache headers, the rejected "conversion" call): parked until the test-site release is in production, then a short separate note.