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.
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)
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.
Cube fits an agency that wants to build its own churn-risk signals and production-cost lag logic directly in a spreadsheet rather than adapt a subscription-churn template.
Mosaic fits an agency that wants net fee revenue and retainer churn tracked automatically once the gross-to-net split is defined at the data-connection stage.
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.
- ECI wages & salaries growth, civilian workers (12-month change). BLS Employment Cost Index, 2026.
Related Guides
When a Marketing Agency's Retainer Becomes Taxable
Creative and strategy retainers are usually exempt, but ad placement and proprietary dashboards can flip that. Here is how Anrok and Avalara fit.
Reconciling Client Ad Spend Before You Pick a Tool
The media pass-through reconciliation problem digital marketing agencies should fix first, and where FloQast and AuditBoard fit around it.
BILL vs Tipalti for Digital Marketing and Performance Agencies
Agencies juggle a freelance creative network, fast-moving campaign approvals, and client pass-through media spend. Here's how BILL and Tipalti compare for that.
Equity as a Retention Lever for Agency Talent
Two approaches to granting equity at a digital marketing or performance agency, and where Pulley and Carta's tradeoffs actually matter for each one.
How a Marketing Agency Should File 1099s for Freelancers
A step-by-step comparison of Tax1099 and Track1099 for digital marketing and performance agencies paying freelance creative, media buyers and influencers.
Should Client Ad Spend Ever Touch Your Agency's Card?
Agencies running client media budgets face a different procurement problem than tool sprawl. See how Airbase and Procurify handle client-funded spend.