Set up your client project: measurement definitions, consent requirements and past findings
Juma projects work per client rather than per task. The team builds one project for each client, adds context to it over time, and every Flow run inside it starts from that shared ground. For a tracking audit the context that changes the output most is the client's own definitions: what counts as a sale, which markets they sell in, and what was already found and fixed last time. If the project already exists, these are additions to it rather than a fresh setup.
What to add
Reporting Definitions
How the client counts a sale and revenue: paid, captured or fulfilled, gross or net of refunds, which order types are excluded. With this in the project, the reconciliation section states a real tolerance instead of listing the options.
Consent and Privacy Requirements
The markets the client sells in, the consent policy they have agreed, and who signs off on anything that touches it. This is what turns the consent grid from a general template into the specific test their reviewer asked for.
Measurement Plan
The events the team intended to collect and what each one feeds. The coverage table compares what the site actually loads against this, so a gap reads as a gap rather than a guess about what should have been there.
Previous Audit Findings
What the last audit flagged and what was fixed. The next run opens with what moved, which is the view that shows whether tracking quality is improving or quietly sliding back.
Guide Juma with project info
Each file in a project can carry a short description in the project info field. Those descriptions tell Juma what a file holds and when it matters, so the right context gets picked up for the task at hand rather than everything at once.
- Reporting Definitions: "How we count orders and revenue, and which order types we exclude. Use for any reconciliation or trust rating."
- Consent and Privacy Requirements: "Markets we sell in and the consent policy we have agreed. Use for every consent test and legal-basis column."
- Measurement Plan: "The events we intended to collect and what each feeds. Compare observed coverage against this."
- Previous Audit Findings: "What the last audit flagged and what was fixed. Open the next audit with what changed."
Find out whether your numbers can be trusted
Frequently Asked Questions
What can this audit see without access to the client's analytics accounts?
It reads the live site: the tag and pixel IDs exposed in the page source, the consent platform and its configuration flags, the data layer, and the tracking present on the real path from product page to cart to checkout. That is enough to prove which tags are configured and to find duplicate routes that can double-count a sale.
What it cannot do is prove delivery. A configured tag is not a fired event, and no amount of reading the public site settles whether a purchase reached the ad platform once, twice or not at all. The audit holds that line explicitly: every finding is labelled either as observed evidence or as a check that needs account access, so nobody acts on a conclusion the evidence does not support.
In practice this is the half of the work that is usually skipped. Teams go straight into the accounts and never establish what the site is actually loading, which is where duplicate routes hide.
What does the findings register include?
One row per finding in an editable CSV: the finding, the evidence behind it, severity, the reporting consequence in plain terms, the owner role, the effort in hours, the test that proves it fixed, and an approver with an approval date. It opens in any spreadsheet and drops straight into a ticket tracker.
The register is deliberately separate from the PDF. The PDF is the document that goes to the client and the stakeholders who decide; the register is the working file the engineer and the analyst actually move through. Different readers, different artifacts.
How is this different from running a browser tag assistant?
A tag assistant tells you what fired on the page you are standing on. This audit covers the whole purchase path, cross-references what it finds against the events the reporting depends on, and ends with a prioritized plan that names the owner, the effort and the test for each fix.
The other difference is the write-up. A browser extension produces a view on a screen that one person reads and then closes. The audit produces a document a client can approve and a register a team can work through, which is what turns a finding into a fix that someone is accountable for.
Does this work for sites that are not on Shopify?
Yes. The audit starts from what the site loads rather than from a platform checklist, so it works the same way on a custom build, a headless storefront or a marketing site with lead forms instead of a cart. The funnel stages change and the method does not.
For a lead-generation site the purchase path becomes the form path: form view, field interaction, submit, thank-you, and the qualified-lead event that the sales system actually counts. The same questions apply, including whether the thank-you page can fire its event twice.
How long does this take compared with a manual audit?
A careful manual tracking audit is usually two to four days of an analyst's time, most of it spent inventorying tags and writing the findings up. Running this Flow gets the inventory, the coverage table, the consent grid and the fix plan back in one working session, with the time that remains going into judgment rather than collection.
That judgment is the part that stays with the team. Deciding which fixes are worth the engineering, what tolerance a client's reporting has to hold, and whether a consent change needs legal review before it ships are calls a person makes. Strategy, taste and judgment stay human, and the audit is built to be reviewed: every finding carries its evidence so a reviewer can disagree with it on the facts.
Teams running this across a client portfolio tend to run it on a schedule rather than once, because tracking breaks on releases and the second run is the one that shows what moved.