Executive Summary
Your programmatic ad revenue from Google Ad Manager and your direct sales revenue from Salesforce don't line up. This makes it very difficult to get a clear, top-line view of how the business is actually doing.
You're having to make important decisions about forecasting and where to put your resources using incomplete and conflicting data. This can make conversations with the board tricky and puts your revenue targets at risk.
The answer isn't another dashboard or hiring more analysts. It's a change to the underlying structure of your data, designed to bring these different sources together into a single, reliable revenue ledger. It's about building one source of truth, not trying to patch together two conflicting ones.
The Monday morning meeting where the numbers don't add up
It's the Monday morning trading meeting. Your Head of Programmatic presents their numbers, pulled straight from the ad server. Your Head of Sales presents their figures, exported from the CRM. They don't match. Often, they aren't even close.
The next half an hour is spent in a familiar, slightly frustrating attempt to manually stitch the two views together. One system tracks revenue by impression, the other by booking. Timezones are different. Advertiser names don't quite line up. The result is that you, as the CRO, can't be certain about the real picture. You can't confidently answer the simple question: "How much money did we make last week?"
This isn't a simple reporting error. It's usually a sign of a problem with the underlying data structure. You've likely invested in a modern data stack and have very capable people on your teams, but you've ended up automating a disconnected process. And automating a broken process just means you get confusing numbers, faster.
Why this happens: there's no single, shared ledger
In my experience, this pattern is quite common in growing digital publishers. The direct sales process and its CRM are usually set up first. Then, programmatic systems are added on later. Each system has its own way of structuring data, its own API, and its own definition of "revenue". These are classic data silos, and they can become a real hindrance.
The problem isn't that your ad server is wrong, or that your CRM is wrong. It's that there's no central place that makes them speak the same language. The logic needed to connect programmatic impression data with direct-sold insertion orders can be complicated. It often lives in spreadsheets and in the heads of your analysts, which is a fragile way to run things.
Without a clear Data Strategy, it's hard to make truly data-driven decisions. Instead, what tends to happen is that decisions are based on a negotiated version of the truth, where the most persuasive argument often wins the day.
How to fix this: building a single source of truth for revenue
To stop these debates, you need to look past the dashboards and work on the underlying data structure. The way to fix it is to build a unified revenue model in your data warehouse. This model then becomes the definitive source for all commercial reporting.
The human side of making this change
Let's be direct: putting this in place isn't just a technical project. It involves people and how they work. You're asking teams to give up the spreadsheets they've relied on for years. You're introducing a level of standardisation that might feel a bit restrictive at first.
The Head of Programmatic will have to get used to a number that doesn't perfectly match their platform's interface. The Head of Sales will need to encourage better data entry discipline in the CRM. It's natural to expect a bit of resistance. The goal is to help everyone see that a single, solid number that everyone agrees on is much more valuable than two "perfect" numbers that are always in conflict.
This process might feel a bit slower for the first few weeks. But it's the kind of slowdown that lets you move much faster for the next few years. You're sorting out the accumulated technical and organisational tangles that are holding things back. The end result is clarity, trust, and the ability for a CRO to lead, rather than spend their time refereeing arguments about data.