FP&A & Financial Modeling3 min readUpdated September 2026

Marketing Agencies: Cube vs Mosaic for Net Fee Planning

For a marketing agency, the useful test of Cube versus Mosaic is whether each tool lets you separate gross billings from net fee revenue, the number that actually pays salaries. Cube has you define that split yourself, while Mosaic calculates SaaS-style metrics that need adjustment to fit agency economics.

Walk through building the same worksheet in both tools and the difference in approach becomes obvious fast: one wants you to define the gross-to-net split yourself, the other wants to calculate SaaS-style metrics that don't map cleanly onto agency economics without adjustment.

Vendors Covered in this Article

Disclosure: We may earn a commission if you buy through some links on this page. It doesn't change what we recommend.

How do you separate gross billings from net fee revenue?

Start the worksheet with two revenue rows, not one: gross billings (everything that flows through your accounts, including client media spend and pass-through production costs) and net fee revenue (what's actually yours after paying media platforms and vendors). Confusing the two is the single most common way an agency's growth story gets overstated to a bank, an investor, or even to the agency's own leadership team.

In Cube, this is a straightforward two-row formula where net fee revenue equals gross billings minus a pass-through cost line you build from vendor and platform invoices. In Mosaic, you'd typically exclude pass-through amounts from the revenue feed entirely at the data-connection stage, so net fee revenue becomes the only number the platform ever sees, which is cleaner but means gross billings has to be tracked somewhere else if you still want to report it to clients.

How should you model retainer churn risk?

Retainer clients typically give 30 days notice before leaving, which means your revenue forecast has real, near-term risk baked into it that a typical SaaS churn model, built around annual contracts, doesn't reflect well. Build a row that flags retainers approaching a renewal or review date, separate from the steady-state retainer total, so a client relationship going quiet shows up as a forecast risk before the notice actually arrives.

Mosaic's churn cohort logic can be adapted for this, but it assumes churn happens on a subscription renewal cycle, monthly or annual, rather than on a rolling 30-day notice period tied to relationship health rather than a contract date. Cube lets you build the flagging logic around whatever signal your account team actually uses, like a client going quiet on a monthly report.

Row Three: Freelance and Production Cost Commitments

Unlike payroll, freelance production cost often gets committed a quarter ahead for a specific campaign, which means it doesn't flex down the moment a retainer client leaves the way agency owners sometimes assume. A worksheet that shows freelance cost as a variable expense tied to current revenue will understate the cash exposure if a client churns mid-quarter after production work is already committed.

Build freelance and contractor commitments as their own row with a lag, showing cost obligations already locked in for the next 60 to 90 days regardless of what happens to revenue in that window. This is the row most agency budgets skip, and it's usually the one that explains a cash surprise after losing a client.

Row Four: What Agency Payroll Growth Should Assume

Account and creative staff compensation tends to track broader labor market trends closely, since agency talent isn't a specialized enough pool to command a large premium the way, say, compliance specialists do. Wage growth across the civilian workforce has been running at 3.4% year over year1, a reasonable floor for your annual merit-increase assumption before layering on any retention raise for a senior account lead you don't want to lose to a competing agency.

Putting the Worksheet Together

  • Net fee revenue, not gross billings, should be the number every other ratio in your model is built against, including any margin or headcount-to-revenue calculation.
  • Flag retainers approaching a renewal or review window as a distinct forecast risk, not folded into steady-state revenue.
  • Show freelance and production commitments with their actual lag, not as a variable cost that flexes instantly with revenue.
  • Build payroll growth off a realistic wage assumption, then add retention premiums for specific people you'd genuinely struggle to replace.

Either tool can hold this worksheet once you've defined the rows. The harder work, and the part that actually matters, is agreeing on the gross-to-net split and the churn-risk definition before you build anything.

Executive Capability Standard

What Good Looks Like

A well-run marketing agency reports net fee revenue as its primary planning number rather than gross billings, flags at-risk retainers well before a notice period would hit, and shows freelance and production commitments with their real cash-timing lag rather than as an instantly variable cost.

Building The Capability (5-Stage Skill Ladder)

1. Learn:Separate two years of historical revenue into gross billings and net fee revenue, and confirm every current report your leadership team reviews uses the right one.
2. Do Manually:Build a churn-risk flag for retainers approaching a renewal window using account-team relationship signals, updated at least monthly.
3. Delegate:Assign an account or finance lead to own freelance and production cost commitments, tracked with their actual lag rather than as a same-month variable expense.
4. Automate:Connect billing and vendor invoice data to Cube or Mosaic so the gross-to-net split and freelance commitment tracking update automatically each month.
5. Buy:Add scenario modeling that shows the cash impact of losing a specific retainer client after production costs for that account are already committed.

How to Get Started

Disclosure: We may earn a commission if you buy through some links on this page. It doesn't change what we recommend.

Frequently Asked Questions

Should client media spend ever count as agency revenue?

Most agencies report gross billings to clients for transparency but track net fee revenue as the number that actually matters for internal planning and payroll. Counting pass-through media spend as revenue overstates growth and can distort any margin or productivity ratio calculated against it.

How far ahead should we flag a retainer client at churn risk?

Build the flag at least 60 days before a typical 30-day notice period would hit, based on relationship signals like reduced engagement or a paused campaign, not just the contract renewal date. This gives account leadership time to intervene before the forecast has to absorb the loss.

Does Mosaic handle agency-style variable production costs well?

Mosaic handles steady operating expense categories cleanly, but project-based or campaign-specific production commitments with an intentional cost lag are closer to a custom build in either tool, since that pattern isn't standard in Mosaic's SaaS-oriented cost modeling.

Sources

Where we quote a benchmark, we show its source. Other figures in this guide are estimates or general guidance, so check them against your own numbers.

  1. ECI wages & salaries growth, civilian workers (12-month change). BLS Employment Cost Index, 2026.

Related Guides