Voice Over Rate Calculator

Voice Over Rate Calculator .vo-calc-container { max-width: 800px; margin: 0 auto; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; color: #333; line-height: 1.6; padding: 20px; background: #f9f9f9; border: 1px solid #ddd; border-radius: 8px; } .vo-calc-header { text-align: center; margin-bottom: 30px; } .vo-calc-header h2 { color: #2c3e50; margin-bottom: 10px; } .vo-input-group { margin-bottom: 20px; background: #fff; padding: 15px; border-radius: 6px; box-shadow: 0 2px 5px rgba(0,0,0,0.05); } .vo-input-row { display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 15px; } .vo-input-col { flex: 1; min-width: 200px; } .vo-input-col label { display: block; font-weight: 600; margin-bottom: 8px; color: #555; } .vo-input-col select, .vo-input-col input { width: 100%; padding: 10px; border: 1px solid #ccc; border-radius: 4px; font-size: 16px; } .vo-input-col input:focus, .vo-input-col select:focus { border-color: #3498db; outline: none; } .vo-btn { width: 100%; padding: 15px; background-color: #3498db; color: white; border: none; border-radius: 4px; font-size: 18px; cursor: pointer; transition: background 0.3s; font-weight: bold; } .vo-btn:hover { background-color: #2980b9; } .vo-result-section { margin-top: 30px; background: #2c3e50; color: #fff; padding: 20px; border-radius: 6px; text-align: center; display: none; } .vo-result-value { font-size: 32px; font-weight: bold; color: #f1c40f; margin: 10px 0; } .vo-breakdown { text-align: left; margin-top: 15px; border-top: 1px solid #465c71; padding-top: 15px; font-size: 14px; } .vo-breakdown-row { display: flex; justify-content: space-between; margin-bottom: 8px; } .vo-article { margin-top: 50px; background: #fff; padding: 30px; border-radius: 8px; border: 1px solid #e1e1e1; } .vo-article h3 { color: #2c3e50; border-bottom: 2px solid #3498db; padding-bottom: 10px; margin-top: 30px; } .vo-article p { margin-bottom: 15px; } .vo-article ul { margin-bottom: 15px; padding-left: 20px; } .vo-article li { margin-bottom: 8px; } .vo-note { font-size: 0.9em; color: #7f8c8d; font-style: italic; }

Professional Voice Over Rate Calculator

Estimate project quotes based on word count, finished hours, or usage fees.

Per Word (E-Learning/Corporate) Per Finished Minute (Narration) Per Finished Hour (Audiobooks) Flat Fee (Commercial Spot)
Licensing for broadcast or paid ads.

Estimated Project Total

$0.00
Calculated Production Cost: $0.00
Session/Base Fee: $0.00
Usage/Licensing: $0.00
Studio/Editing: $0.00

How Voice Over Rates Are Calculated

Pricing voice over work is distinct from many other freelance services because it often involves two separate components: production fees (the labor) and usage fees (the license). Understanding these metrics is crucial for both voice talents and clients to ensure fair compensation and accurate budgeting.

1. The Pricing Models

This calculator handles the four most common industry standards for pricing VO work:

  • Per Word: Commonly used for E-Learning, corporate narration, and explainers. Rates typically range from $0.20 to $0.35 per word depending on volume and talent experience.
  • Per Finished Hour (PFH): The standard for Audiobooks. "Finished" means the audio is edited, mastered, and ready for retail. One PFH usually takes the talent 4-6 hours of real-time work.
  • Per Finished Minute: Often used for shorter narration projects or YouTube video narration.
  • Flat Fee / Spot: Used for Commercials (TV, Radio, Internet). This usually includes a session fee plus usage.

2. Session Fee vs. Usage Fee

One of the most critical concepts in voice over is the difference between the Session Fee and the Usage Fee.

The Session Fee (or Base Fee) covers the time and labor of the talent in the booth. It pays for the recording capability, the talent's time, and the initial file delivery. For internal corporate work, the session fee might be the only cost.

The Usage Fee (or Buyout) pays for the license to use that voice in public media. If a voice over is used in a national TV commercial running for 13 weeks, the usage fee will be significantly higher than the session fee. This calculator allows you to input these separately to see how they impact the total project estimate.

3. Industry Rate Guides

When determining your input numbers for "Rate Per Unit," it is highly recommended to consult standard industry rate guides such as the GVAA Rate Guide. These guides provide current market averages for different genres (e.g., Automotive spots vs. Medical narration) to ensure your quotes remain competitive yet sustainable.

Note: This calculator provides an estimate based on your inputs. Actual rates may vary based on revisions, file splitting requirements, and rush delivery fees.

function updateVOLabels() { var model = document.getElementById('pricingModel').value; var qtyLabel = document.getElementById('quantityLabel'); var rateLabel = document.getElementById('rateLabel'); var qtyInput = document.getElementById('projectQty'); if (model === 'word') { qtyLabel.innerText = 'Word Count'; rateLabel.innerText = 'Rate Per Word ($)'; qtyInput.placeholder = 'e.g. 500'; } else if (model === 'minute') { qtyLabel.innerText = 'Finished Minutes'; rateLabel.innerText = 'Rate Per Minute ($)'; qtyInput.placeholder = 'e.g. 5'; } else if (model === 'pfh') { qtyLabel.innerText = 'Finished Hours'; rateLabel.innerText = 'Rate Per PFH ($)'; qtyInput.placeholder = 'e.g. 8.5'; } else if (model === 'spot') { qtyLabel.innerText = 'Number of Spots'; rateLabel.innerText = 'Rate Per Spot ($)'; qtyInput.placeholder = 'e.g. 1'; } } function calculateVOEstimate() { // Get Inputs var model = document.getElementById('pricingModel').value; var qty = parseFloat(document.getElementById('projectQty').value); var unitRate = parseFloat(document.getElementById('unitRate').value); var sessionFee = parseFloat(document.getElementById('sessionFee').value); var usageFee = parseFloat(document.getElementById('usageFee').value); var studioFee = parseFloat(document.getElementById('studioFee').value); // Validation: Treat empty or NaN as 0 for fees, but require qty/rate for main calc if (isNaN(sessionFee)) sessionFee = 0; if (isNaN(usageFee)) usageFee = 0; if (isNaN(studioFee)) studioFee = 0; // Basic validation for main calculation inputs if (isNaN(qty) || qty < 0) { qty = 0; } if (isNaN(unitRate) || unitRate < 0) { unitRate = 0; } // Logic var productionCost = 0; // Calculate Production Cost based on model // Math is: Quantity * Rate productionCost = qty * unitRate; // Total var total = productionCost + sessionFee + usageFee + studioFee; // Display Results var resultDiv = document.getElementById('voResult'); resultDiv.style.display = 'block'; // Format Currency var formatter = new Intl.NumberFormat('en-US', { style: 'currency', currency: 'USD', }); document.getElementById('totalAmount').innerText = formatter.format(total); document.getElementById('prodCost').innerText = formatter.format(productionCost); document.getElementById('baseCost').innerText = formatter.format(sessionFee); document.getElementById('usageCost').innerText = formatter.format(usageFee); document.getElementById('studioCost').innerText = formatter.format(studioFee); } // Initialize labels on load updateVOLabels();

Leave a Comment