Build the report around the decision it has to support
When marketing brings one spreadsheet to a trading meeting, sales brings a CRM export and finance brings the management accounts, the room spends forty minutes arguing over whose number is right instead of deciding what to do next. A prettier chart will not fix a report if the systems underneath are counting different things. - Marketing, sales and finance present conflicting lead or revenue totals for the exact same month. - Your team spends hours every Monday copying CSV exports into fragile spreadsheets by hand. - Existing dashboards are crammed with dozens of metrics, yet still cannot tell you where to move budget. - Dashboards load slowly, time out or quietly break whenever a source field changes. Agentix designs and builds commercial reports and dashboards for UK eCommerce, B2B and trade businesses. Part of our [tracking and reporting services](/services/tracking-reporting), we define every measure in plain English, reconcile how your web analytics, CRM and finance systems count the numbers, and build a clear working view in the reporting tool your team uses.
Why GA4, your CRM and Finance never match on their own
In our experience, reporting arguments between departments are rarely caused by someone making a spreadsheet mistake. They happen because each system is built to answer a different question at a different point in the customer journey. Here is an illustrative reconciliation with invented round numbers (not a client result) showing how a single month of trading looks across **GA4, a sales CRM and a Finance ledger**: | Commercial measure | What GA4 reports | What the Sales CRM shows | What Finance recognises | Why the three numbers differ | What happens if you treat them as the same thing | | -- | -- | -- | -- | -- | -- | | Inbound enquiries | 420 form events | 310 new leads | 0 (no ledger entry) | GA4 counts browser form events; the CRM deduplicates repeat submissions and strips non-sales messages | Marketing claims a £35 cost per lead and scales campaigns that sales has already rejected | | Qualified pipeline | Not visible in GA4 | 140 accepted quotes (£420,000) | 0 (quotes are not revenue) | Only the CRM tracks which enquiries became real commercial quotes | High-volume campaigns win budget over campaigns that bring in fewer, higher-value trade quotes | | Monthly revenue | £285,
Where commercial reporting breaks down across teams
When a dashboard is built by dragging charts onto a screen without agreeing definitions first, the same problems come up every month: | What you see in your reports | What is happening underneath | What it costs your decisions and team | | -- | -- | -- | | Marketing reports 200 leads while sales insists only 80 arrived | Marketing counts raw browser form submissions; sales counts qualified opportunities in the CRM | Leadership meetings get derailed debating who is right while ad spend keeps backing noisy traffic | | Dashboard revenue is 20% higher than the management accounts | The dashboard pulls gross analytics transactions (including VAT, shipping and returns) as if they were net sales | Budgets and ROAS targets are set against inflated revenue that never reached the bank account | | Dashboards take minutes to load or fail with timeout errors | Visualisation widgets query live operational APIs directly across tens of thousands of unindexed rows | Staff give up waiting for the dashboard to load and go back to maintaining private spreadsheets | | Yesterday's campaign numbers keep shifting when checked a day later | Standard GA4 reports take 24 to 48 hours to finish processing lat
Defining what counts before building the charts
Before we build a layout in Looker Studio, Power BI, Metabase, BigQuery or a structured spreadsheet, we agree a **measure dictionary** with your team. Every number on the screen gets a clear specification: - **The business question it answers:** Why this number is on the page and which decision it supports. - **What counts and what is excluded:** Whether VAT, delivery, returns, test orders, internal staff or duplicate submissions are included or stripped out. - **The authoritative source and refresh window:** Which system owns the number and when it updates, so nobody mistakes a 24-hour processing delay for a drop in sales. If we inspect your sources and find that a website tag is broken or records are failing to cross into your CRM, we don't hide the gap behind a tidy chart. We mark the affected measure clearly and can fix the underlying tracking or [customer data connection](/services/customer-data-systems) so the report rests on solid ground.
Frequently asked questions
### Why do our Google Analytics, CRM and accounting numbers never match? Because they measure different moments under different rules. GA4 records browser events at checkout (including VAT, shipping and orders that are later cancelled). Your CRM tracks sales pipeline activity and signed quotes. Your accounting software recognises net revenue when goods are dispatched or invoiced under UK accounting standards. We build reports that reconcile those stages clearly so you can see how browser traffic turns into banked revenue. ### Which dashboard and reporting tools do you work with? We build in the tool that fits your team and data volume, including Looker Studio, Power BI, Metabase, BigQuery and structured Google Sheets or Excel models. You don't need an expensive new software licence if your current tools can hold the right definitions and refresh cleanly. ### What is a measure dictionary, and why do we get one with our report? A measure dictionary is a plain-English reference sheet handed over alongside your dashboard. For every metric on the report, it states the exact definition, source system, calculation rule, exclusions and refresh schedule. It stops different departments fro
Speak to us about a report or dashboard build
Whether you want to replace a manual Monday-morning spreadsheet, reconcile marketing and finance numbers for the board, or rebuild a slow dashboard around clear definitions, we can help.