Back to blog

Operations

The Marketing P&L: Why CFOs and CMOs argue, and what to do about it

The canonical essay on why marketing-finance alignment fails — and the structural fix. Three-way reconciliation, hidden cost layers, and the Unified operating rhythm.

Alon KivityMay 9, 202612 min read

The Marketing P&L: Why CFOs and CMOs argue, and what to do about it

The Monday Meeting

It is 9:07 on a Monday morning. The CFO and the CMO are in the same room for the first time this week, both of them holding numbers that describe the same quarter. The CFO's spreadsheet says the company spent $340K on marketing last quarter and acquired 38 new customers, which works out to a CAC of roughly $9K. The CMO's deck says LinkedIn alone returned a 4.2x pipeline ROAS, Google returned 3.8x, and the Q1 content investment is already yielding organic traffic that should convert through Q2. Both people are telling the truth. Neither number is wrong. They just cannot be reconciled in a 45-minute meeting with five other people in the room, so the first 25 minutes become a negotiation about methodology, and the last 20 minutes are spent agreeing to sync later on the numbers before any actual decision gets made.

I have sat in some version of this meeting at every company I have worked at. At LSports, where the marketing budget competed directly with the data infrastructure budget in a business that needed both. At Yango Delivery, where the spend was high enough and the attribution murky enough that the CFO and CMO were essentially operating in separate realities by the end of each quarter. At Nominis, where we were small enough that I was running parts of both functions and still found myself arguing with myself about which number to put in the board deck.

The argument is never really about whether marketing is working. At $20M ARR and above, everyone in that room knows marketing is doing something. The fight is about whose spreadsheet to trust — and until you fix that structurally, every Unified meeting is the same meeting.

Why This Happens

There are three structural reasons this problem persists, and none of them have anything to do with the intelligence of the people involved. The CFO and the CMO are both doing their jobs correctly. They are just doing them from different vantage points with different source data, and the gap between those vantage points shows up as a number disagreement every single time.

The CFO computes CAC top-down. She starts with total marketing spend as reported in the general ledger — everything that hits the marketing cost centers in QuickBooks or NetSuite — and divides by new customers closed in the period. This is the right move from a finance perspective. It is clean, auditable, and tells you the real economic cost of acquiring a customer across the entire motion. The problem is that the denominator (closed customers) has a lag, the numerator (spend) sometimes has coding errors, and the result is a blended number that obscures what is actually driving performance.

The CMO computes ROAS bottom-up, by channel. He starts at the platform level — LinkedIn Campaign Manager, Google Ads, HubSpot — pulls attributed pipeline or revenue, and divides by the ad spend recorded inside that platform. This is also the right move from a marketing performance perspective. It lets you optimize spend allocation, kill underperforming channels, and justify budget increases to the board. The problem is that platform attribution is self-serving, the pipeline numbers are leading indicators rather than booked revenue, and the spend captured inside the platform UI is almost never the full cost of running that channel.

They use the same words for different math. When the CMO says "ROAS," she means platform-attributed pipeline divided by platform-recorded ad spend. When the CFO says "ROAS," he means something closer to marketing contribution margin — actual revenue influenced, divided by fully-loaded cost. Both are called ROAS in the meeting. This is where the 25 minutes of reconciliation goes.

To make this concrete: imagine a $30M ARR B2B SaaS company runs a LinkedIn campaign in Q1. They spend $40K in ad budget over six weeks. The campaign generates 18 demo requests, 6 of which enter the pipeline at an average deal size of $60K. That's $360K in pipeline.

LinkedIn Campaign Manager reports a 9x pipeline ROAS. The CMO presents this number.

The marketing manager pulls the HubSpot report and sees that 4 of those 6 deals are still open, 1 closed-won, and 1 churned before closing. The revenue actually attributed to the campaign in the closed period is $60K. Divide by $40K spend: 1.5x ROAS. That's what the CFO sees if she uses booked revenue instead of pipeline.

The FP&A analyst then adds the agency fee ($12K for creative and copy), the RevOps contractor who set up the tracking ($3K), and the half-month of the Demand Gen manager's salary allocated to this campaign ($7K). Total loaded cost: $62K. Revenue: $60K. Loaded ROAS: 0.97x.

One campaign. Three ROAS numbers: 9x, 1.5x, and 0.97x. All defensible. None of them the same.

This is not a math problem. It is a definitional problem, and it does not get solved by buying better attribution software.

The Hidden Cost Layer

Here is the thing that almost every marketing P&L gets wrong, including the ones built by smart people who know better: the cost side is incomplete by 30 to 50 percent. This is not because anyone is hiding anything. It is because the costs are real but scattered across systems that don't talk to each other, and nobody has operational incentive to load them all in one place.

The categories that go missing, consistently, across every company I have seen this at:

  • Agency hours allocated across multiple campaigns. A creative agency sends one invoice per month. That invoice covers work on four campaigns, three ad formats, and two content pieces. Nobody allocates it. It sits in accounts payable as a single line item and gets attributed to whichever campaign the person entering the bill thinks of first, or it gets coded to a generic "agency fees" bucket that never touches any campaign-level analysis.
  • Freelance contracts paid via Wise or Deel. A copywriter in Lisbon, a paid search specialist in Kyiv, a video editor in Cape Town. The payments hit via international transfer and never appear in the platform UI. They exist in bank statements and occasionally in the CFO's export, but they are almost never reflected in the campaign ROAS that the CMO is presenting.
  • SaaS tools that serve marketing but live in ops or IT. Outreach is usually in sales ops. Zoom webinars get coded to general G&A. Substack or Beehiiv sits in a founder's personal card and gets expensed quarterly. Pavilion membership, which is functionally a marketing channel, lives in professional development. None of these appear in the marketing P&L. All of them are real costs of marketing.
  • FTE allocation. This is the biggest one. A Demand Gen manager at a $30M ARR SaaS company costs, all-in with benefits and equity, somewhere around $180K per year. That is $15K per month. If she is working across five campaigns, each campaign should carry $3K per month of her cost. It almost never does. The campaigns get evaluated on ad spend only, which makes them look dramatically more efficient than they are, which in turn makes the CFO's top-down CAC look dramatically worse by comparison — because the CFO is looking at total compensation in the GL and the CMO is looking at ad spend in the platform.

When you load all of these honestly — agency allocation, freelance payments, tool costs, FTE time — you typically find that the "real" cost of any given campaign is 30 to 50 percent higher than what the CMO's dashboard shows. That is not a rounding error. It is the difference between a 4x ROAS and a 2x ROAS.

Here is the thing the CFO has been intuiting all along: she can see the total spend. She knows the total headcount cost. She divides them and gets a number that seems terrible relative to what the CMO is presenting. She is not wrong. She is looking at a more complete version of the cost side. The argument in the Unified meeting is not about marketing performance — it is about the fact that the CMO's math is missing half the inputs.

Loading costs honestly does not make marketing look bad. It makes marketing legible. A 2x fully-loaded ROAS on a channel that you understand completely is more valuable than a 4x ROAS that you cannot reproduce because you do not know what actually went into it.

The Reconciliation Contract

The fix to this is not analytical. You cannot hire a smarter analyst and get to a single number. The fix is structural: you need a contract between finance and marketing on how numbers are produced, and that contract needs three-way matching built into it.

The three-way reconciliation works like this. For every dollar of marketing activity, there are exactly three canonical records of it:

The source platform knows what was spent and what it attributed. LinkedIn knows that $40K was spent and that 18 demo requests came in. Google knows that $22K was spent and that 14 leads converted. These are the platform records — authoritative for spend within the platform, but incomplete on cost and unreliable on revenue.

The accounting system knows what was actually paid. QuickBooks has the agency bill. NetSuite has the contractor invoice. The bank feed has the Wise transfer. The GL knows the real total cost of every vendor relationship, whether or not any of it appeared in a platform UI.

The CRM knows what actually happened to the pipeline. HubSpot has the closed-won records, the deal stages, the close dates, and the attribution tags (if someone set them up properly). This is the only system that knows whether the pipeline became revenue.

The reconciliation contract says: for every campaign or channel, these three views must tie. If the agency billed $12K for LinkedIn creative and $8K for Google creative, those numbers must appear in the campaign-level cost view, not just in the GL. If a deal closed in March that was attributed to a January LinkedIn campaign, the revenue credit must flow back to that campaign's P&L. If a freelance contractor was paid $3K via Wise for paid search optimization, that payment must be tagged to the Google Ads campaign it supported.

Mismatches between any two of the three views surface as findings. A finding is not an alarm — it is a signal that someone needs to make a decision. If the LinkedIn spend per the platform is $40K but per the accounting system it is $52K (because the agency bill for LinkedIn creative hasn't been allocated yet), that is a $12K gap that needs to land somewhere. If the HubSpot pipeline from a campaign is $360K but the closed-won revenue is $60K, the 90-day lag is either normal (deals in progress) or a signal that something in the qualification funnel broke.

The contract is not sophisticated. It is actually very simple: same numbers, all the time, automatically. The CFO's CAC and the CMO's ROAS should both be derivable from the same underlying dataset. If they are, the Unified meeting stops being about reconciliation and starts being about what to do next.

To walk through the worked example from earlier: the $30M ARR company's LinkedIn campaign has $40K in platform spend, $12K in agency creative fees, $3K in freelance tracking work, and $7K in FTE allocation. Total loaded cost: $62K. The accounting system should show all of these tagged to the campaign — the $40K as a platform charge, the $12K from the agency bill (line-item allocated), the $3K from a contractor invoice, and the $7K as an internal FTE allocation entry. The CRM shows one closed-won deal at $60K, four deals open (average $60K, but not revenue yet), and one deal lost. The three views reconcile: $62K cost, $60K booked revenue, $240K open pipeline. ROAS on booked revenue: 0.97x. ROAS on full pipeline if it closes: 4.9x. Both numbers are now shared, understood, and grounded in the same underlying reality. The argument in the Unified meeting disappears — not because everyone agrees the campaign was great, but because everyone is looking at the same thing.

The Monday Operating Rhythm

Having a reconciled dataset is necessary but not sufficient. The dataset becomes useful when it is embedded in a weekly operating rhythm that both the CFO and the CMO are actually in.

The rhythm I have seen work — and have tried to build at every company I have been at — looks like this.

Every Monday morning, 20 minutes, both leaders, one shared view. Not a slide deck. Not an async email. A live dashboard that both people can point at, where the numbers are already reconciled and the agenda is decisions, not data entry.

The review covers three things. First, variance from plan: which channels came in over or under budget last week, and why. This is not a blame exercise — it is a signal-detection exercise. If LinkedIn spend paced 30 percent over budget because the agency ran an unplanned retargeting push, that is useful information that needs to go somewhere. If the Google conversion rate dropped, that needs an owner.

Second, decisions waiting: items that are in inbox but have not been acted on. The LinkedIn budget is due for a Q2 reforecast — has anyone made a recommendation? The HubSpot renewal is in 45 days — does the CMO want to add seats, and does the CFO want to renegotiate the contract? There are three freelance invoices in the payables queue from last month — are they approved? These are not CFO decisions or CMO decisions. They are joint decisions that require both people to have looked at the same context.

Third, the forward four-week commit: what is planned, what is locked, and what is flexible. This is the closest thing to a marketing budget forecast that actually gets updated in real time, because both the person who knows the spend plan and the person who controls the cash are in the room at the same time.

The output of the meeting is not a new slide deck. It is a decision log — a record of what was decided, by whom, and when. This sounds like bureaucracy but it is the opposite. It is what eliminates the "I thought you were going to..." conversations that happen in the next Unified meeting.

High-performing CFO and CMO duos converge on some version of this independently. The specifics vary — Stripe famously runs finance and go-to-market reviews on extremely tight weekly cadences with shared metrics. Figma's early finance team was embedded in go-to-market in a way that made the channel economics visible to both functions simultaneously. Notion has talked publicly about how much of their growth was driven by ruthless attribution discipline enforced jointly across finance and marketing. None of them got there by accident. They got there by deciding that the Monday conversation would be about decisions, not reconciliation.

The 20-minute constraint is real and important. If the meeting runs longer, it means the dashboard is doing too little work and the humans are doing too much. The goal is a meeting where everyone walks in looking at the same numbers and walks out with a decision log. If you are spending more than five minutes on "wait, where does that number come from," the underlying contract is not working yet.

What This Is Not

Before someone reads this essay and concludes that I am proposing a new category of software that replaces everything they already have, let me be specific about what the reconciliation contract is not.

It is not a replacement for FP&A. The CFO's team runs the financial model, manages the close process, owns the board reporting, and handles everything that requires GAAP compliance. None of that changes. The marketing P&L is a subset of the full P&L, not a competing one.

It is not a replacement for attribution platforms. HockeyStack, Dreamdata, and similar tools solve a genuinely hard problem: multi-touch attribution across long B2B buying cycles with anonymous early-stage visitors. That problem is real and those tools are good at it. The reconciliation contract does not attempt to solve attribution. It takes attribution outputs as inputs and reconciles them against accounting records and CRM outcomes.

It is not bookkeeping. Accounts payable, payroll, month-end close, revenue recognition — none of that changes. The three-way reconciliation sits on top of the accounting system. It reads from it; it does not replace it.

It is also not a data warehouse project. You do not need to build a custom data pipeline and hire a data engineer to implement this. You need a structured process for loading costs honestly, tagging them to campaigns, and reviewing the reconciled view with both the CFO and CMO in the same room.

The scope is narrow on purpose: a structural contract between finance and marketing on the marketing line item. That specific problem is the one that costs companies the most in wasted Unified meetings, misallocated budget, and strategic decisions made on incomplete information.

Why I Built Eline

I want to be honest about something. I am not an objective observer here.

I built Eline because I was tired of building this spreadsheet. At every company I joined, I would spend the first three months reconstructing the marketing P&L from scratch — pulling the agency bills out of accounts payable, cross-referencing contractor invoices against Wise transaction exports, building FTE allocation models in Excel, and then connecting all of it to HubSpot and whatever ad platform we were running. I got reasonably good at it. But I was rebuilding the same thing every time, and every time I left a company, the next person had to rebuild it again.

The spreadsheet I am describing in this essay is not complicated. But it requires someone to hold the keys to finance, marketing, and operations simultaneously, which is not how most companies are organized. The CFO does not have time to reconcile the LinkedIn creative bill against the campaign performance data. The CMO does not have visibility into the accounts payable queue. Nobody is asking the RevOps manager to allocate FTE time across campaigns. So it does not happen, and the Unified meeting stays broken.

Eline is the operating layer for CFO and CMO alignment. The three-way reconciliation I described is one part of it. The shared dashboard — the thing you pull up on a Monday morning so both leaders are looking at the same view — is another part. The decision log that captures what was decided and by whom is a third part. Taken together, they are the infrastructure for the operating contract I have been describing.

If you want to see how it works in practice, the how-it-works page lays it out without the narrative scaffolding. But if you take nothing else from this essay, take the Unified meeting structure and the three-way reconciliation framework. Both can be implemented in a spreadsheet tomorrow. They will immediately make the Unified meeting more useful, even if nothing else changes.

The fight is not whether marketing is working. The fight is whose spreadsheet to trust. Fix the spreadsheet problem, and the fight goes away.

— Alon

See it on real numbers. Aligned.

Thirty minutes, real reconciliation, written gap report — yours to keep.

See our security posture →