Rate Card Calculator

Advertising Rate Card Calculator

CPM (Cost Per Mille / 1,000 Impressions) CPC (Cost Per Click) CPD (Cost Per Day / Flat Rate) CPL (Cost Per Lead)

Media Campaign Summary

Base Media Cost:

Agency Fee / Adjustment:


Total Gross Budget:

Understanding Media Rate Cards

A rate card is a document provided by a media outlet or advertising platform that details the costs for various ad placements. Using a rate card calculator helps media buyers and marketing managers estimate the gross spend for a campaign across different buying models.

Common Rate Card Metrics

  • CPM (Cost Per Mille): The price for every 1,000 impressions served. This is standard for display, video, and programmatic advertising.
  • CPC (Cost Per Click): The price paid for each individual user click. Common in search engine marketing and social media.
  • CPD (Cost Per Day): A flat fee for owning a placement (like a homepage takeover) for a full 24-hour period.
  • Markup/Fees: Most agencies add a 10% to 20% management fee to the net media cost, which is calculated as a percentage of the total spend.

The Calculation Formula

Depending on your pricing model, the math changes slightly:

CPM Formula: (Impressions / 1,000) * Rate per Unit
CPC/CPL Formula: Quantity * Rate per Unit
Gross Total: Base Cost * (1 + (Fee Percentage / 100))

Real-World Example

Suppose a publisher has a CPM of $12.00. You want to purchase 500,000 impressions. Your agency charges a 15% fee.

  1. Base Cost: (500,000 / 1,000) * $12.00 = $6,000
  2. Agency Fee: $6,000 * 0.15 = $900
  3. Total Gross Cost: $6,900
function calculateRateCard() { var pricingModel = document.getElementById("pricingModel").value; var unitRate = parseFloat(document.getElementById("unitRate").value); var quantity = parseFloat(document.getElementById("quantity").value); var adjustmentPercent = parseFloat(document.getElementById("adjustment").value); if (isNaN(unitRate) || isNaN(quantity) || unitRate <= 0 || quantity <= 0) { alert("Please enter valid positive numbers for Rate and Quantity."); return; } if (isNaN(adjustmentPercent)) { adjustmentPercent = 0; } var baseCost = 0; // Logic selection based on media buying model if (pricingModel === "CPM") { baseCost = (quantity / 1000) * unitRate; } else if (pricingModel === "CPC" || pricingModel === "CPL" || pricingModel === "CPD") { baseCost = quantity * unitRate; } var adjustmentAmount = baseCost * (adjustmentPercent / 100); var totalGross = baseCost + adjustmentAmount; // Formatting output document.getElementById("resBaseCost").innerText = "$" + baseCost.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById("resAdjustment").innerText = "$" + adjustmentAmount.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById("resTotal").innerText = "$" + totalGross.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById("resultsArea").style.display = "block"; }

Leave a Comment