Oregon Wage Calculator

Oregon Net Pay & Wage Calculator

Standard (Majority of Oregon) Portland Metro (Inside UGB) Non-Urban Counties Current rates effective July 1, 2024.
Single Married / Filing Jointly

Calculation Results

Gross Weekly:
Gross Annual:
Est. Payroll Taxes (FICA):
Est. Oregon State Tax:
OR Transit & Paid Leave:
Est. Net Take-Home:

*Disclaimer: These are estimates based on standard 2024 Oregon tax brackets and payroll laws. Actual take-home may vary based on specific local taxes, health insurance, and retirement contributions.


Understanding Oregon's Unique Wage Structure

Oregon is unique in the United States because it utilizes a three-tiered minimum wage system based on geography. Unlike states with a single flat rate, Oregon adjusts its base pay to account for the varying costs of living between urban centers like Portland and rural agricultural counties.

The Three Regions of Oregon Wages

  • Portland Metro: Includes areas inside the urban growth boundary. This is the highest tier to compensate for the high cost of housing and services in the metro area.
  • Standard: Covers counties like Marion, Deschutes, and Lane. This is the "middle" tier for developed regions that aren't quite as expensive as Portland.
  • Non-Urban: Includes rural counties such as Baker, Coos, and Malheur. This tier is slightly lower, reflecting the lower cost of living in these communities.

Oregon-Specific Payroll Deductions

When calculating your "take-home" pay in Oregon, there are several unique deductions to keep in mind:

  1. Oregon Statewide Transit Tax: A 0.1% tax on the wages of every resident and non-resident working in Oregon.
  2. Paid Leave Oregon: A relatively new program where employees contribute 0.6% of their gross wages to a state fund for family, medical, and safe leave.
  3. State Income Tax: Oregon has one of the highest state income taxes in the nation (ranging from roughly 4.75% to 9.9%), as the state has no sales tax.

Example Calculation

If you work in the Standard Region at the current minimum wage of $14.70 per hour for 40 hours a week:

  • Gross Weekly Pay: $588.00
  • FICA (Social Security & Medicare): ~$45.00
  • Oregon Transit & Paid Leave: ~$4.12
  • Estimated Net Weekly: ~$470.00 (depending on federal/state tax filing status)
function updateMinWage() { var regionVal = document.getElementById("wageRegion").value; document.getElementById("hourlyRate").value = regionVal; } function calculateOregonWage() { var rate = parseFloat(document.getElementById("hourlyRate").value); var hours = parseFloat(document.getElementById("hoursPerWeek").value); var filingStatus = document.getElementById("filingStatus").value; if (isNaN(rate) || isNaN(hours)) { alert("Please enter valid numbers for rate and hours."); return; } // Basic Gross Math var weeklyGross = rate * hours; var annualGross = weeklyGross * 52; var monthlyGross = annualGross / 12; // FICA (Social Security 6.2% + Medicare 1.45% = 7.65%) var fica = annualGross * 0.0765; // Oregon Specific Small Deductions // Transit Tax (0.1%) + Paid Leave Oregon (0.6% employee portion) var orSpecificDeductions = annualGross * 0.007; // Estimated Oregon Income Tax (Simplified graduated estimate) var orTax = 0; if (annualGross < 10000) { orTax = annualGross * 0.05; } else if (annualGross 0) { if (taxableIncome < 11600) fedTax = taxableIncome * 0.10; else if (taxableIncome < 47150) fedTax = 1160 + (taxableIncome – 11600) * 0.12; else fedTax = 5426 + (taxableIncome – 47150) * 0.22; } var totalAnnualTax = fica + orSpecificDeductions + orTax + fedTax; var annualNet = annualGross – totalAnnualTax; var monthlyNet = annualNet / 12; // Display results document.getElementById("resGrossWeekly").innerText = "$" + weeklyGross.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById("resGrossAnnual").innerText = "$" + annualGross.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById("resFica").innerText = "-$" + (fica / 52).toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}) + " /wk"; document.getElementById("resOregonTax").innerText = "-$" + (orTax / 52).toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}) + " /wk"; document.getElementById("resOrDeductions").innerText = "-$" + (orSpecificDeductions / 52).toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}) + " /wk"; document.getElementById("resNetMonthly").innerText = "$" + (annualNet / 12).toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}) + " /mo"; document.getElementById("wageResult").style.display = "block"; }

Leave a Comment