Skip to content

Margin for Marketing Agencies.

You know the work. Margin handles the math — so you see whether every retainer, project, and channel is carrying its weight.

How agencies price today

Digital, brand, performance, integrated — the label changes, the math doesn't. You're already pricing retainers, projects, and campaigns. The hard part isn't the work. It's seeing whether the price still holds once the hours start landing.

A $5K/month retainer scoped for 30 hours quietly becomes 50 by month four. The revenue looks consistent. The effective rate has dropped 40%. You'd see it sooner if the math kept up with the work.

Where margin gets lost

  • Retainers that drift. A retainer scoped for 30 hours of senior strategy turns into 50 hours of mixed staff. Revenue stays flat. Margin doesn't.
  • One blended rate across every channel. SEO, paid, content, brand, and lifecycle each cost different amounts to deliver. One rate hides which service funds the others.
  • "Can you also look at our email?" No new deliverable named, no scope change logged. The hours still happen.
  • Senior priced, junior delivered. It works until a director rebuilds the work. Role-level cost data makes the gap visible before that happens.
5,400/mo
searches for 'SEO pricing' — the largest pricing-focused vertical query in the dataset.
DataForSEO
57%
of agencies lose $1K–$5K per month to unbilled scope creep.
Ignition 2025
9.8%
EBITDA across professional services in 2024 — the lowest in five years.
SPI Research / Deltek Clarity 2025

A Website Redesign, priced top to bottom.

Here's a sample project from Margin: a Website Redesign for Meridian Health Systems, priced at $99,412 with a 30.3% margin. Each line — Discovery & Strategy, User Research, Design, Development, Content & Copywriting — carries its own price, cost, and margin %. You see the project's health and every line item's health at the same time.

Margin project detail for the Website Redesign — $99,412 price, $69,278 cost, 30.3% margin, with Discovery & Strategy, User Research, Design, Development, and Content & Copywriting line items each showing their own margin %

Price retainers and projects on real numbers.

Your best projects become your pricing playbook

Save the projects that priced well, then adapt them for each new client. The included sample agency has a Brand Strategy & Positioning template at 47.7%, a Content Calendar at 48.4%, and a Monthly Retainer Block at 45.1%. Your team starts every quote from a known-good baseline instead of a blank spreadsheet.

Margin's Item Templates list — Brand Strategy & Positioning, Content Calendar, Digital Ad Creative, Launch Event Coordination, Monthly Retainer Block, Quality Assurance & Launch, and Social Content, each with its own price, cost, and margin %

Cost rate and bill rate, role by role

You set up your roles once — your real cost rates, your bill rates, your overhead. The included sample agency shows a Creative Director costing $180/hr fully loaded, billing at $257.14. A Junior Designer costs $95, bills at $135.71. Swap a senior for a junior on a retainer and you see the margin change before the work starts.

Margin's Roles & Pricing screen showing cost rate and bill rate for Creative Director, Art Director, Senior Designer, Junior Designer, Copywriter, Social Media Strategist, Account Manager, Project Manager, Brand Strategist, and Production Artist

Portfolio-level margin, not just project-level

Reports roll up every project, every client, every status. In the sample, an Annual Retainer with PeakForm Athletics runs at 46.6%. A Holiday Campaign with Heirloom Foods runs at 14.6%. An Influencer Program got rejected. You see which work is funding the agency at a glance.

Margin's Reports view — 23 projects across clients including Whitfield & Co., PeakForm Athletics, Voltra Energy, Clarify Health, and Heirloom Foods Co., showing actual price, cost, and margin % per project with a $317,202 total margin

See whether each retainer is carrying its weight.

Price retainers, projects, and campaigns on real numbers — before the proposal goes out.

Try Margin free