How to Overtime Calculation

Overtime Pay Calculator

Calculate your total earnings including time-and-a-half or double-time

Time and a Half (1.5x) Double Time (2.0x) Straight Time (1.0x)

Pay Breakdown

Regular Pay: $0.00
Overtime Pay (1.5x): $0.00
Total Gross Pay: $0.00

How to Calculate Overtime Pay

Understanding how overtime is calculated is essential for both employees and employers to ensure fair compensation. Most labor laws, including the Fair Labor Standards Act (FLSA), require that non-exempt employees receive overtime pay for hours worked over 40 in a workweek.

The Standard Formula

To calculate your overtime pay manually, follow these three steps:

  1. Regular Pay: Multiply your regular hourly rate by your regular hours (usually 40).
  2. Overtime Rate: Multiply your hourly rate by the overtime multiplier (typically 1.5).
  3. Overtime Pay: Multiply the overtime rate by the number of overtime hours worked.

Real-World Example

Let's say you earn $20 per hour and worked 45 hours this week at a 1.5x multiplier.

  • Regular Pay: 40 hours × $20 = $800
  • Overtime Rate: $20 × 1.5 = $30 per hour
  • Overtime Pay: 5 hours × $30 = $150
  • Total Gross Pay: $800 + $150 = $950

Common Overtime Multipliers

While 1.5x (time and a half) is the legal standard for hours over 40 in most jurisdictions, some companies or state laws (like in California) may require "Double Time" (2.0x) for hours worked on holidays or after 12 hours in a single workday.

function calculateOvertime() { var rate = parseFloat(document.getElementById('hourlyRate').value); var regHrs = parseFloat(document.getElementById('regHours').value); var otHrs = parseFloat(document.getElementById('otHours').value); var mult = parseFloat(document.getElementById('multiplier').value); if (isNaN(rate) || isNaN(regHrs) || isNaN(otHrs)) { alert("Please enter valid numbers for all fields."); return; } // Logic var regularPay = rate * regHrs; var otRate = rate * mult; var overtimePay = otHrs * otRate; var totalPay = regularPay + overtimePay; // Format results document.getElementById('resRegPay').innerText = '$' + regularPay.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById('resOtPay').innerText = '$' + overtimePay.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById('resTotalPay').innerText = '$' + totalPay.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); // Label update var multLabel = (mult === 1.5) ? "1.5x" : (mult === 2.0) ? "2.0x" : mult + "x"; document.getElementById('resOtLabel').innerText = "Overtime Pay (" + multLabel + "):"; // Show result container document.getElementById('ot-results').style.display = 'block'; }

Leave a Comment