Your Stripe checkout took money last month. You open GA4 and it says 0 purchases and $0 in revenue, against 1,277 users. That was JuristAI in February 2026. The checkout worked and plans were selling. The report simply never said so.
| Measure | Figure | Period |
|---|---|---|
| Purchases and revenue logged in GA4 | 0 and $0 | 30 days to 26 Feb 2026 |
| Key events set up in GA4 | 0 | 26 Feb 2026 |
| Visits filed as Direct | 99.73% of 291,072 | 1 Dec 2025 to 28 Feb 2026 |
| Days the signup tracking has run in their live code | 142 | 17 Apr to 6 Sep 2026 |
A paying product that could not name one sale
JuristAI builds LitigAI, a paid legal tool for drafting demand letters and tracking case deadlines. Two engineers ship it, and one is the CEO. They were not short of hands. They were short of one answer: which month made money?
Autonomous Technologies helps founders and operators who sell online and cannot tell which month made them money. We find where the sale goes missing between the checkout and the report. JuristAI’s own numbers came first, pulled before anyone quoted them. GA4 is Google Analytics 4, the free traffic report most sites run. A key event is the flag GA4 uses to mark a signup or a sale. Their property had none set at all. So GA4 could not work out a rate or hand a sale back to an ad platform. It could not build a funnel either, meaning the count of people at each step from first visit to paid.
Stripe took the money and GA4 filed it as someone else
Checkout jumped to Stripe’s own site. The buyer left, paid, and came back. GA4 read that return as a brand new visit from another site. It fired no purchase event and logged no revenue. Against 1,277 users in the 30 days to 26 February 2026: 0 purchases, $0.
Where visits came from was no better. Direct is what GA4 calls a visit it cannot trace to a source, and 99.73% of the locked window fell into it. Roughly 283,000 of those 291,072 sessions were bots, not people, packed into two weeks at 400 times a normal week. Real traffic was small. The chart made it look huge.
A report that cannot name a sale cannot price an ad. Zero key events is not a small gap in a dashboard. It means every dollar you spend is judged against a number the system was never told how to count.
We locked a before picture we could not move later
Nothing was touched until the numbers already there were written down. A before picture, or baseline, is a dated record of your figures taken before anyone changes the tracking. This one runs 1 December 2025 to 28 February 2026 and was signed off on 25 March 2026.
The reason is blunt. Once you change tracking, a number can move because the recording got better, not because anyone behaved differently. A vendor who touches the instrument first can claim that difference. Here the order was reversed, so the client could grade the work against figures nobody on the delivery side controlled. The same order runs through the local search work for SafaiKaro.

The fixes went in through their process, not ours
Two things left the Autonomous side. The first was the web address: two versions of it both worked, so Google was free to treat them as two separate sites. We wrote the redirect and the steps to switch it on, and their CEO put it live the same day, on 25 March 2026.
The second was the code. One of our engineers added 16 tracking calls across 9 files of their own app: 127 lines in, 23 out. A tracking call is one line that sends a named event when someone clicks. They cover the footer, both menus, the signup form, the Law Library and the Cite Checker. Each call carries the page, the element and a group name, so a visitor who hits a tool limit is told apart from one who used the top menu.
Their team accepted it into the live code 25 hours and 30 minutes after it was written. Nobody on the vendor side could approve that work, and nobody needed to. The same handover shape runs through the white-label delivery for Part & Sum.
Write code you would be happy to accept from a stranger. Every tracking call is written so a blocked or missing library does nothing and the click still goes through. It adds no new software and removes no tracking the client already had.

What moved, and what we never measured
| Measure | Before, 1 Dec 2025 to 28 Feb 2026 | Last check, 6 Sep 2026 |
|---|---|---|
| Key events set up in GA4 | 0 | not measured |
| Purchases logged against the checkout | 0, $0 | not measured |
| Signup click tracking in the product | 0 | 16 calls, live |
| Both web addresses serving the same site | yes | fixed 25 Mar 2026, not retested |
| Share of visitors who buy | not measured | not measured |
The code shipped and stayed. All 16 calls and both event names are still in their live code on 6 September 2026, 142 days after it was accepted. In that time the team made 661 changes, 110 in those nine files. Three of their own rewrites moved the layout around those calls, keeping every event name intact.
What we cannot show you is a number that moved for the business. We built an impact log with expected results and three check dates. Its results column is still blank, and nobody has confirmed a single event reached the receiving tool. Code sitting in an app proves it shipped. It does not prove a report was read or a dollar changed hands.
What we would do differently, and who this is not for
Three things, if you are weighing this work. We would ship the naming guide that was scoped and never delivered, which would have caught two faults: one screen sends the same signup event twice for a single click, and one element name is reused in two places. We would put the live check on the invoice, not the wish list. And we would book the read back dates, because a before picture nobody returns to is just filing.
This is for you if your checkout takes money and your report cannot name the sale, and if you have engineers who would rather review a 127 line change than hand over the whole app. It is not for you if you want a dashboard built around your data with nobody touching the code, or a lift quoted before the before picture exists.

Questions and answers
Can you add funnel tracking without rebuilding the product?
Yes. Autonomous Technologies added 16 tracking calls to JuristAI’s existing screens across 9 files, and their own team accepted the change in 25 hours and 30 minutes.
Why lock a before picture first, instead of fixing the tracking?
Because changing tracking can change your number even when nobody behaves differently. A locked window from 1 December 2025 to 28 February 2026 let the client grade the work against figures we could not move.
What does a GA4 audit actually check?
A GA4 audit checks tag setup, whether key events exist, whether purchases reach the report, how visits are sourced, and how much traffic is real. Here it found 0 key events, 0 purchases against 1,277 users, and 99.73% of visits filed as Direct.
Did the work lift sales?
We cannot show that, and we will not claim it. The tracking is still in the client’s live code 142 days later, but no checked after picture exists for sales.
