Prepared for: Pelican Point Outfitters (fictional example) · kayak tours, rentals and gift vouchers · agreed August 2026 · reviewed quarterly
Installing analytics is free and takes about fifteen minutes. We will say that before anyone asks, because it is true and because the software companies say it too. This document is the part that isn't free, and it is the part almost nobody does: deciding what counts as a conversion, agreeing what each one is worth, and proving the number matches the system that actually holds the money.
Everything below was agreed in a single ninety-minute session with the owner and the front-desk manager. It is deliberately short. A measurement plan that runs to forty pages is a document nobody will open in March, which is exactly when it matters.
| What counts | Where it is recorded | What it is worth | How we verify it | Status |
|---|---|---|---|---|
| Trip booked, deposit paid | Booking system → analytics key event → Google Ads | Deposit value, passed dynamically with the event | A test booking placed and refunded on the first Monday of each month | Verified |
| Inquiry form completed | Gravity Forms entry, matched to the analytics event by entry ID | Counted, not valued — we do not know what an inquiry is worth yet | Entry count compared to the analytics count monthly | Verified |
| Phone call longer than 60 seconds | Tracking number shown on the trips pages only | Counted, not valued | Call log spot-checked against recordings quarterly | Verified |
| Gift voucher purchased | Store checkout → analytics purchase event | Order value | Reconciled against the payment processor's payout statement | Verified |
| Trips booked at the desk, on paper | Nowhere. Currently invisible to every system | Unknown | Not verifiable until the front-desk log starts | Not counted |
The last row is the honest one. Desk bookings genuinely happen and genuinely matter, and right now nothing records them — so nothing in this plan reports on them, and no budget decision rests on them. The alternative is to estimate, and an estimate in a measurement plan is just a guess with better manners.
Every analytics account undercounts. The question is by how much, and whether the gap is stable enough to make decisions on. A booking number that is reliably fourteen percent light is perfectly usable. A booking number nobody has ever checked is not usable at all, however confident the dashboard looks.
| What | Analytics counted | The system of record holds | Gap | What we do about it |
|---|---|---|---|---|
| Trip bookings, July | 121 | 141 (booking system) | −14.2% | Stable across three months. We report the booking system's number and note the analytics gap beside it. |
| Inquiry forms, July | 94 | 97 (Gravity Forms) | −3.1% | Within noise. Either number is safe to trend. |
| Desk bookings, July | 0 | Paper diary — no count available | Unknown | Front-desk log starts 1 September. Until then this is a known blind spot, stated in every report. |
For scale: published research comparing analytics key events against the system of record across 33 accounts found an average of 11.2% of conversions missing on sites without a consent banner and 20.3% on sites with one — but individual accounts ranged from 1% to 30% (Orbit Media Studios, How Accurate is Google Analytics?). That spread is the whole point. An average is not your number, and this table is how you get yours.
A plan that counts everything is a dashboard. Three to five numbers decide things and the rest is context — and writing down which is which is most of the job. The last chip is the one that causes arguments: counting assisted conversions as revenue makes every channel look profitable at once, because the same booking gets credited more than once. The money number stays the money number.
A trip booking where the deposit has actually cleared. Not a started checkout, not an abandoned cart, not a booking later canceled inside the free-cancellation window — those are refunded out of the count at month end.
On the booking system's confirmation callback, not on the thank-you page. Thank-you pages change address every time the booking plugin updates, which is how most conversion tracking quietly dies.
The deposit value, passed dynamically. Not an average, not a fixed placeholder number — the actual amount, so cost-per-booking means something when trips are priced differently.
A real test booking placed and refunded on the first Monday of each month, plus the monthly reconciliation above. If the test booking does not appear within an hour, that is a fault ticket the same day.
Whether the deposit or the full trip value is the right number to pass. The owner is checking with the bookkeeper. It changes the cost-per-booking figure materially, and until it is settled we are reporting the deposit and saying so.
Tracking decays by default. Releases rename buttons, forms get moved, themes get swapped, a plugin updates and a confirmation URL changes. The conversion action keeps existing and quietly stops firing, and nothing warns anybody. We have opened accounts where the last recorded conversion was months old and every budget decision since had been made on a signal that had stopped.
Every property, container, conversion action and connection named in this plan lives in Pelican Point's own accounts — not a copy held on our side. If we stop working together, the plan stays, the tracking keeps running, and nothing has to be rebuilt. We remove our own access and that is the entire offboarding. There is no version of this document held back, and nothing here needs our permission to be handed to somebody else.
Every Tracking & Analytics Setup produces a document in this shape. Its companion is the monthly report, which is what the numbers become once they can be trusted — and the audit findings sheet, which is usually where a broken conversion action gets found in the first place.
Get your AI Growth Snapshot