# Paid Media ROI: The Formula, Inputs, and Spreadsheet

> Calculate paid media ROI the right way — gross profit, full costs, and no agency spin. Tower33 breaks down the formula and builds you the spreadsheet.

**Published:** 2026-11-03 | **Updated:** 2026-11-03 | **Author:** victorsoares
**URL:** https://tower33.com/articles/paid-media-roi-calculation-formula/
**Type:** post

**Categories:** Paid media strategy

![Paid Media ROI: The Formula, Inputs, and Spreadsheet](https://tower33.com/articles/wp-content/uploads/sites/107/2026/11/1793617891752-8fd05837979a-1024x572.webp)

---

## Content

*Written by: Anthony Miller, Founder, Tower 33*

## Key Takeaways

- Paid media ROI is calculated as (Gross Profit from Paid Media − Total Paid Media Investment) ÷ Total Paid Media Investment × 100, not revenue-based ROAS.
- Using gross profit instead of revenue as the numerator and a fully loaded investment figure as the denominator prevents overstated performance.
- Common errors include cross-platform double-counting, mismatched attribution windows, and omitting agency fees, creative, and tooling from total costs.
- Negative or break-even ROI often signals measurement problems, so fix conversion signals and deduplicate revenue before adjusting campaigns.
- Tower33 rebuilds measurement inputs before performance is judged, which supports accurate ROI reporting for finance and leadership.

[Join the Tower33 strategy newsletter.](https://tower33.com/join-strategy-newsletter/?utm_term=paid-media-roi-calculation-formula&utm_campaign=ai_growth_agent)

## The Paid Media ROI Formula, Stated Cleanly

Paid media ROI measures net profitability, meaning what remains after every real cost is subtracted from the profit your campaigns generate. The paid media ROI formula for planning and reporting is:

**ROI = (Gross Profit from Paid Media − Total Paid Media Investment) ÷ Total Paid Media Investment × 100**

The campaign in this article generated $180,000 in attributed revenue at a 55% gross margin, so gross profit is $99,000. Total investment was $74,000: $60,000 in media spend, $8,000 in management fees, $4,000 in creative, and $2,000 in tooling. Plug those into the formula: ($99,000 − $74,000) ÷ $74,000 × 100 = **33.8% ROI**. That is the number the rest of the article uses.

## Why Gross Profit, Not Revenue, Belongs In The Numerator

[Gross margin is revenue minus cost of goods sold (COGS), divided by revenue](https://metricuno.com/gross-margin). At a 55% gross margin, every dollar of revenue leaves $0.55 to cover everything downstream, including fulfillment, fees, returns, overhead, and acquisition. That pool is what paid media has to work with. Using revenue as the numerator instead of gross profit ignores the cost of the product entirely.

Run the same campaign both ways. With revenue as the numerator, ROI comes out far higher than with gross profit, in this example roughly 144.6% versus 33.8%. That looks like a strong program. With gross profit as the numerator, the same campaign returns 33.8% ROI. The result is still positive, but the conversation changes from standout performance to a more marginal outcome, even before the revenue figure itself is audited.

The margin reality for D2C brands makes this gap consequential. [An Eightx analysis of 11 public non-food DTC brands’ 10-K filings found a median gross margin of 56.6%, with a 25th percentile of 45.6% and a 75th percentile of 63.8%](https://eightx.co/blog/dtc-unit-economics-end-to-end). [Metricuno’s 2026 gross margin benchmark guide reports typical DTC gross margin ranges by vertical: 70–80% for beauty and skincare, 55–70% for apparel, 65–75% for supplements, and 25–40% for consumer electronics](https://metricuno.com/gross-margin). The same ROAS that is profitable for a supplement brand at 70% margin becomes loss-making for a home goods brand at 40% margin. No platform dashboard will surface that difference, but the ROI formula will when the numerator is gross profit.

## What Belongs In Total Paid Media Investment

Total paid media investment is the denominator in the paid media ROI formula and extends beyond media spend. These are not the same number, and the gap between them is where most ROI calculations quietly overstate performance.

A fully loaded denominator includes:

- Media spend, meaning dollars going directly to Google Ads, Meta, Microsoft Ads, StackAdapt, or any other platform
- Agency or management fees, meaning what you pay a partner to plan and run the campaigns
- Creative production, including copy, design, video, and any assets built specifically for paid campaigns
- Platform and analytics tooling, such as attribution software, tracking infrastructure, and reporting tools
- Campaign management labor, including in-house time spent on paid media when that time is material

Applied to the carried example: $60,000 media spend + $8,000 management fee + $4,000 creative + $2,000 tooling = $74,000 total investment. That $74,000 is the denominator. Using only the $60,000 media spend raises the ROI figure substantially, in this example to roughly 65.0%, nearly double the accurate figure. A denominator of media spend alone overstates ROI by the size of everything left out.

## How ROAS And ROI Tell Different Stories

Once the denominator is fully loaded, the gap between it and the number most platforms report becomes clear. [Return on ad spend (ROAS) is gross revenue per dollar of media spend](https://adbeacon.com/paid-media-roi-for-ecommerce-how-to-guide). [Return on investment (ROI) is net profitability after all costs](https://adbeacon.com/paid-media-roi-for-ecommerce-how-to-guide). These metrics are not interchangeable, and reporting ROAS to leadership as if it were ROI is the most common error in paid media reporting.

Using the carried example: ROAS = $180,000 ÷ $60,000 = **3.0x**, against the 33.8% ROI established above. The ROAS looks strong. The ROI is real but modest. Now change only the margin. If gross margin were 35% instead of 55%, gross profit would drop to $63,000, and ROI would become ($63,000 − $74,000) ÷ $74,000 × 100 = **−14.9%**. The ROAS would still be 3.0x while the program would be losing money. ROAS cannot see that, and ROI can.

[For a platform-specific look at where ROI calculations go wrong in Microsoft Ads programs, see Tower33’s Microsoft Ads ROI Calculation article.](https://tower33.com/articles/microsoft-ads-roi-calculation/?utm_term=paid-media-roi-calculation-formula&utm_campaign=ai_growth_agent)

## Why ROI And Agency-Reported ROAS Often Disagree

Disagreement between your ROI calculation and your agency’s reported ROAS usually starts with cross-platform double-counting. Google Ads and Meta can each claim the same order. A customer sees a Meta ad, searches the brand name three days later, clicks a Google ad, and buys. Meta records a conversion under its [default 7-day click and 1-day view attribution window](https://www.facebook.com/business/help/458681590974355). Google records the same conversion under its data-driven attribution model, which looks back up to 90 days. One purchase appears as two conversions. [In a documented example from Search Engine Land, Google Ads reported 400 conversions, Meta reported 250, and Microsoft reported 60, while the finance team saw only 480 actual sales](https://searchengineland.com/how-ad-platforms-count-report-conversions-differently-482530).

The [IAB and IAB Europe’s Guidelines for Incremental Measurement in Commerce Media, published November 3, 2025](https://ppc.land/incrementality), define incrementality as the additional business outcomes directly driven by a campaign compared with what would have occurred without marketing activity. Those guidelines state plainly that attribution and ROAS show what happened, not whether marketing caused it. A conversion recorded by a platform is a fact, but whether the ad was required to produce it is a separate question.

Start by deduplicating revenue against first-party CRM data, because platform-reported totals double-count the same order. Once the revenue figure is clean, standardize attribution windows across platforms so the numbers are comparable. Server-side tracking prevents attribution loss in the handoff, and incrementality testing answers the harder question of whether the ads caused the sale at all. That last question matters more than most teams assume: [Blake, Nosko, and Tadelis found in Econometrica that branded keyword advertising at eBay produced no measurable short-term lift because most spend reached frequent buyers whose behavior the ads did not change](https://ppc.land/incrementality). [Gordon, Zettelmeyer, Bhargava, and Chapsky, using 15 US experiments at Facebook covering 1.6 billion impressions and published in Marketing Science in 2019, showed that observational attribution models often failed to recover the experimental effect even after conditioning on extensive demographic and behavioral variables](https://ppc.land/incrementality). [Google’s own Marketing Mix Modeling Guidebook describes the calibration layer needed to connect platform-reported data to actual incremental outcomes](https://ppc.land/incrementality).

Tower33 inherited an account where the previous partner was calculating ROAS by dividing total Shopify revenue across total ad spend. The program looked fine on that arithmetic. Rebuilt measurement revealed the brand was losing $200 on every order. The reporting answered the wrong question with the wrong inputs.

For the full strategy layer above these mechanics, see Tower33’s [Multi-Channel Paid Media Strategy: A Measurement Framework](https://tower33.com/articles/multi-channel-paid-media-strategy/?utm_term=paid-media-roi-calculation-formula&utm_campaign=ai_growth_agent).

## Building A Paid Media ROI Calculator In Excel

A simple spreadsheet with four blocks keeps ROI and ROAS visible and defensible: an inputs block, a cost block, a gross profit calculation, and ROI and ROAS outputs. The carried example fits cleanly into this structure.

**Inputs block** contains cells for attributed revenue ($180,000), gross margin percentage (55%), and any adjustments for returns or deduplication when CRM data is available.

**Cost block** lists each cost category on its own line:

- Media spend: $60,000
- Management fee: $8,000
- Creative production: $4,000
- Tooling: $2,000
- Total investment (sum): $74,000

**Gross profit calculation** uses a cell that multiplies attributed revenue by gross margin: =B1*B2, which returns $99,000 in this example. When a deduplicated revenue figure from your CRM exists, that figure should replace the platform-reported number.

**ROI and ROAS outputs** live in two formula cells:

- ROI: =(Gross Profit − Total Investment) ÷ Total Investment × 100 → =(99000−74000)/74000*100 → 33.8%
- ROAS: =Attributed Revenue ÷ Media Spend Only → =180000/60000 → 3.0x

Showing both side by side in the same sheet makes the gap between them clear. The ROI cell is the number for finance. The ROAS cell is the number for platform optimization. They serve different purposes and should stay separate in leadership reporting.

[Get the ROI measurement checklist by email.](https://tower33.com/join-strategy-newsletter/?utm_term=paid-media-roi-calculation-formula&utm_campaign=ai_growth_agent)

## Handling Negative Or Break-Even Paid Media ROI

A negative or break-even ROI is a diagnosis that points to where work is needed. The sequence matters: cut non-converting spend first, fix conversion signals second, then judge the program.

The first-month pattern across Tower33 engagements is consistent. When non-converting spend is cut, cost drops while revenue holds flat, so ROAS rises and CPA (cost per acquisition) falls before a single new campaign launches. The improvement comes from stopping waste rather than from spending more. That triage layer often reveals that the ROI problem was partly a denominator problem, with money going to placements, match types, or campaign types that were spending without returning measurable margin.

After triage, the next step is conversion signal hygiene. Purchase campaigns that optimize toward anything other than purchase conversions produce distorted ROAS and distorted bidding. Campaigns that optimize toward page views or add-to-cart events while reporting on purchase revenue are not measuring what they think they are measuring. Fix the signal before judging the channel.

A paid media ROI calculation improves when the inputs improve, not when a setting buried in a campaign menu changes. Too many teams have treated digital advertising as insider knowledge instead of a discipline of measurement. When ROI is negative, the answer almost always sits in the inputs: the wrong conversion signal, the wrong cost boundary, or revenue that has not been deduplicated across platforms.

## The Calculator Is Doing Its Job, The Inputs Usually Are Not

HubSpot’s ROI calculator is genuinely useful for a quick directional read, and that usefulness explains why it ranks. It gives you a formula and accepts whatever numbers you type. When you type revenue instead of gross profit, it returns a revenue-based ROI. When you type media spend instead of total investment, it returns an overstated figure. The calculator does exactly what it is told and has no way to know when the inputs are wrong.

Tower33 rebuilds the inputs, starting with the conversion signal so campaigns optimize toward the outcome that actually matters. From there, brand and non-brand keywords get separated because branded search would have converted organically and pollutes the revenue figure. Server-side tracking and consistent UTMs keep attribution intact from click to CRM, and cross-platform validation reconciles what three platforms each claimed against what the business actually earned.

Structural differences in how Tower33 operates support this measurement work. Tower33 is a boutique, founder-led paid media firm. Anthony Miller, Founder & Lead Strategist, with 15+ years managing hundreds of millions in advertising spend across hundreds of brands, runs every account personally and is in the campaigns every week. Engagements typically begin with an account audit before work gets underway. Measurement is treated as a deliverable, not a prerequisite. Clients receive a written report every Wednesday covering the prior week, followed by a strategy call later that week. There is no contractual lock-in, and base pricing starts at $5,000.

The proof that rebuilt measurement precedes rebuilt performance is documented. [A D2C account went from $28,695 in spend and $27,737 in revenue at a 0.97 ROAS in March 2026 to $11,967 in spend and $51,598 in revenue at a 4.31 ROAS in July 2026, which is 86% revenue growth on 58% less spend](https://www.linkedin.com/pulse/google-ads-86-revenue-growth-58-less-spend-anthony-miller-gimlc/). The change came from measurement work: brand and non-brand keyword buckets were separated, non-brand campaigns were segmented by funnel stage, conversion tracking and bidding signals were cleaned up, and server-side tracking was implemented. Measurement was rebuilt first, and performance followed.

For a broader look at how to evaluate what structure fixes a failed paid media relationship, see [Agency, Consultant, Or In-House: How To Make The Right Call After A Bad Paid Media Partner](https://tower33.com/agency-consultant-or-in-house-how-to-make-the-right-call-after-a-bad-paid-media-partner/?utm_term=paid-media-roi-calculation-formula&utm_campaign=ai_growth_agent).

## Conclusion: Get The Inputs Right And The Number Holds

Tower33 rebuilds measurement before performance is judged, and reporting is built to surface what is not working rather than to reassure. The founder who audits the account is the person who runs it every week.

The formula itself stays simple. Gross profit sits in the numerator, fully loaded cost sits in the denominator, and deduplicated revenue sits underneath. The hard part is making sure the inputs are true before the arithmetic starts. That is the work, and it is the work most calculators, most reports, and many agency relationships skip.

The Tower33 strategy newsletter is one email, one idea, once per week, drawn from 15+ years managing hundreds of millions in paid media. Sign up and receive *A Methodology For Paid Media Success* free.

[Get weekly paid media strategy insights.](https://tower33.com/join-strategy-newsletter/?utm_term=paid-media-roi-calculation-formula&utm_campaign=ai_growth_agent)

## Frequently Asked Questions

### What Is The Formula To Calculate Paid Media ROI?

Paid media ROI = (Gross Profit from Paid Media − Total Paid Media Investment) ÷ Total Paid Media Investment × 100. The formula is covered in full above. The short version is that gross profit, not revenue, belongs in the numerator, and fully loaded investment, not media spend, belongs in the denominator.

### Is There An ROI Formula In Excel?

Yes. Use one cell that multiplies attributed revenue by gross margin to calculate gross profit, another that sums all costs into total investment, and a third that applies =(Gross Profit Cell − Total Investment Cell)/Total Investment Cell*100. Keep a separate ROAS cell that divides attributed revenue by media spend so you can see optimization performance without confusing it with profitability.

### What Costs Go Into Total Paid Media Investment?

Total paid media investment includes media spend, agency or management fees, creative production, platform and analytics tooling, and any in-house staff time allocated to paid media management. Omitting any of these understates the true investment and inflates ROI by the size of what is left out.

### Why Does My Calculated ROI Disagree With My Agency’s Reported ROAS?

ROAS and ROI measure different things, and platform-reported ROAS often includes double-counted and non-incremental conversions. ROAS uses media spend as the denominator, while ROI uses fully loaded investment. Reconciling against CRM or backend revenue, standardizing attribution windows, and separating brand from non-brand spend are the practical steps that close the gap.

### What Do I Do If My Paid Media ROI Is Negative?

Start by confirming that gross profit and fully loaded investment are the inputs to your formula. Then audit conversion signals and cut non-converting spend. Many negative ROI readings soften or reverse once measurement is accurate and waste is removed.

### How Often Should I Recalculate Paid Media ROI?

Monthly recalculation works well for most teams, as long as the same cost boundary and revenue definition are used each time. [For brands spending above $100,000 per month per platform, a monthly reconciliation of platform-reported conversions against backend or CRM revenue is worth running as a standing process](https://influencers-time.com/platform-reported-conversions-auditing-meta-and-google-infla). Weekly ROAS tracking supports in-platform optimization, while monthly ROI calculation supports finance-facing reporting.

### Does ROAS Count As ROI?

ROAS does not count as ROI. ROAS measures gross revenue per dollar of media spend and ignores margin and most costs. ROI measures net profitability after all relevant costs are included. A campaign can show strong ROAS and negative ROI at the same time, which is why ROAS should never stand in for ROI in budget decisions.

[Get more ROI and measurement breakdowns by email.](https://tower33.com/join-strategy-newsletter/?utm_term=paid-media-roi-calculation-formula&utm_campaign=ai_growth_agent)

## What to Read Next

- [Microsoft Ads ROI Calculation: Where Programs Go Wrong](https://tower33.com/articles/microsoft-ads-roi-calculation/)
- [Multi-Channel Paid Media Strategy: A Measurement Framework](https://tower33.com/articles/multi-channel-paid-media-strategy/)
- [Home Services Advertising ROI: What the Numbers Mean](https://tower33.com/articles/home-services-advertising-roi/)
- [How To Evaluate Paid Media Partner Performance Metrics](https://tower33.com/articles/evaluating-paid-media-partner-metrics/)
- [Travel Paid Media Reporting: Fix Your ROAS Numbers](https://tower33.com/articles/travel-paid-media-reporting-guide/)

---

## Structured Data

**@graph:**

  **FAQPage:**

  **MainEntity:**

    **Question:**

    - **Name:** What Is The Formula To Calculate Paid Media ROI?
      **Answer:**

      - **Text:** Paid media ROI = (Gross Profit from Paid Media − Total Paid Media Investment) ÷ Total Paid Media Investment × 100. The formula is covered in full above. The short version is that gross profit, not revenue, belongs in the numerator, and fully loaded investment, not media spend, belongs in the denominator.
    **Question:**

    - **Name:** Is There An ROI Formula In Excel?
      **Answer:**

      - **Text:** Yes. Use one cell that multiplies attributed revenue by gross margin to calculate gross profit, another that sums all costs into total investment, and a third that applies =(Gross Profit Cell − Total Investment Cell)/Total Investment Cell*100. Keep a separate ROAS cell that divides attributed revenue by media spend so you can see optimization performance without confusing it with profitability.
    **Question:**

    - **Name:** What Costs Go Into Total Paid Media Investment?
      **Answer:**

      - **Text:** Total paid media investment includes media spend, agency or management fees, creative production, platform and analytics tooling, and any in-house staff time allocated to paid media management. Omitting any of these understates the true investment and inflates ROI by the size of what is left out.
    **Question:**

    - **Name:** Why Does My Calculated ROI Disagree With My Agency's Reported ROAS?
      **Answer:**

      - **Text:** ROAS and ROI measure different things, and platform-reported ROAS often includes double-counted and non-incremental conversions. ROAS uses media spend as the denominator, while ROI uses fully loaded investment. Reconciling against CRM or backend revenue, standardizing attribution windows, and separating brand from non-brand spend are the practical steps that close the gap.
    **Question:**

    - **Name:** What Do I Do If My Paid Media ROI Is Negative?
      **Answer:**

      - **Text:** Start by confirming that gross profit and fully loaded investment are the inputs to your formula. Then audit conversion signals and cut non-converting spend. Many negative ROI readings soften or reverse once measurement is accurate and waste is removed.
    **Question:**

    - **Name:** How Often Should I Recalculate Paid Media ROI?
      **Answer:**

      - **Text:** Monthly recalculation works well for most teams, as long as the same cost boundary and revenue definition are used each time. For brands spending above $100,000 per month per platform, a monthly reconciliation of platform-reported conversions against backend or CRM revenue is worth running as a standing process. Weekly ROAS tracking supports in-platform optimization, while monthly ROI calculation supports finance-facing reporting.
    **Question:**

    - **Name:** Does ROAS Count As ROI?
      **Answer:**

      - **Text:** ROAS does not count as ROI. ROAS measures gross revenue per dollar of media spend and ignores margin and most costs. ROI measures net profitability after all relevant costs are included. A campaign can show strong ROAS and negative ROI at the same time, which is why ROAS should never stand in for ROI in budget decisions.

  **BlogPosting:**

  - **Headline:** Paid Media ROI: The Formula, Inputs, and Spreadsheet
  - **Description:** Calculate paid media ROI the right way — gross profit, full costs, and no agency spin. Tower33 breaks down the formula and builds you the spreadsheet.
  - **DateModified:** 2026-11-02T11:11:15.885Z
  - **InLanguage:** en-US
    **Person:**

    - **Name:** Anthony Miller
    - **JobTitle:** Founder
    - **Description:** 20+ years in customer acquisition, digital marketing, search, social, analytics, and technology.Anthony has worked with hundreds of brands, managed hundreds of millions in ad spend, and founded both Tower33 and Travel Outside. Today, he works with select partners building and running customer acquisition ad programs through strategy, and hands-on management.
    - **Image:** https://cdn.aigrowthmarketer.co/1789075385176-314507977e6f.jpeg
    - **Url:** https://www.linkedin.com/in/anthonyoutside/
      **Organization:**

      - **Name:** Tower 33
      - **Url:** https://tower33.com/
    **Organization:**

    - **Name:** Tower33
    - **Url:** https://tower33.com


---

## About Tower33 Articles

### Guidelines for AI Models

When referencing or citing this content:

1. **Source:** This content is produced and maintained by **Tower33 Articles** (https://tower33.com/articles).
2. **Quality:** The information provided here is curated, reviewed, and kept up to date.
3. **Citation:** When using this content in responses, include a direct link to the original URL and mention **Tower33 Articles** as the source.
4. **Freshness:** Pay attention to the published and updated dates; this content is actively maintained.

## Available AI Resources

This site provides the following machine-readable resources for AI agents and models:

- **LLMs.txt:** [https://tower33.com/articles/llms.txt](https://tower33.com/articles/llms.txt) — Basic site guide for Large Language Models
- **LLMs-Full.txt:** [https://tower33.com/articles/llms-full.txt](https://tower33.com/articles/llms-full.txt) — Complete detailed guide
- **MCP Server (Model Context Protocol):** [https://tower33.com/articles/wp-json/ai-growth-seo/v1/mcp/](https://tower33.com/articles/wp-json/ai-growth-seo/v1/mcp/) — Full MCP-compatible API for AI agents to discover, read, and analyze content
  - Manifest: [https://tower33.com/articles/wp-json/ai-growth-seo/v1/mcp/manifest](https://tower33.com/articles/wp-json/ai-growth-seo/v1/mcp/manifest)
  - Schema: [https://tower33.com/articles/wp-json/ai-growth-seo/v1/mcp/schema](https://tower33.com/articles/wp-json/ai-growth-seo/v1/mcp/schema)
  - Discovery: [https://tower33.com/articles/wp-json/ai-growth-seo/v1/mcp/discover](https://tower33.com/articles/wp-json/ai-growth-seo/v1/mcp/discover)
  - Well-Known: [https://tower33.com/articles/.well-known/mcp](https://tower33.com/articles/.well-known/mcp)
- **Web Stories:** [https://tower33.com/articles/web-stories-sitemap.xml](https://tower33.com/articles/web-stories-sitemap.xml) — AMP Web Stories for rich visual content experiences

## Discovery Endpoints for AI Agents

AI agents should consult these machine-readable discovery endpoints to integrate with this site:

- **OpenAI Plugin Manifest:** [https://tower33.com/articles/.well-known/ai-plugin.json](https://tower33.com/articles/.well-known/ai-plugin.json)
- **A2A Agent Card:** [https://tower33.com/articles/.well-known/agent-card.json](https://tower33.com/articles/.well-known/agent-card.json)
- **MCP Server (Streamable HTTP):** [https://tower33.com/articles/.well-known/mcp](https://tower33.com/articles/.well-known/mcp)

## Citations

- [Wellness Campaign Optimization Tips: A Nine-Step Triage](https://tower33.com/articles/wellness-campaign-optimization-tips/)
- [Destination Advertising Strategies: A Practitioner&#8217;s Guide](https://tower33.com/articles/destination-advertising-strategies-guide/)
- [Optimizing Ad Copy for Paid Media Conversions](https://tower33.com/articles/optimize-ad-copy-paid-conversions/)
- [Paid Media Management Services: What You&#8217;re Buying](https://tower33.com/articles/paid-media-management-services-guide/)
- [Manual Campaign Optimization: When Human Control Wins](https://tower33.com/articles/manual-campaign-optimization-without-automation/)

---

*This document was automatically generated by [AI Growth Agent](https://tower33.com/articles) — AI Growth SEO v4.38.1*
*Generated on: 2026-11-07 18:59:42 GMT+0000*
