Understanding your take-home pay in New York City can be complex due to the various federal, state, and local taxes, along with other deductions. This NYC Take-Home Pay Calculator helps you estimate your net income after all the necessary withholdings.
What is Take-Home Pay?
Take-home pay, also known as net pay, is the amount of money you actually receive in your paycheck after all deductions have been subtracted from your gross salary. Your gross salary is your total earnings before any taxes or other deductions are taken out.
Key Deductions in New York City
When you work in NYC, several types of deductions impact your take-home pay:
Federal Income Tax: This is a progressive tax levied by the U.S. government. The amount withheld depends on your gross income, filing status, and the number of allowances claimed on your W-4 form (though the W-4 has changed, many calculators still use allowances for simplified withholding estimates).
Social Security Tax (FICA): A federal insurance contribution that funds retirement, disability, and survivor benefits. It's a flat percentage of your income up to an annual wage base limit.
Medicare Tax (FICA): Another federal insurance contribution that funds hospital insurance for the elderly and disabled. It's a flat percentage of all your income, with no wage base limit.
New York State Income Tax: Similar to federal tax, New York State levies its own progressive income tax based on your income, filing status, and state allowances.
New York City Local Income Tax: Residents of NYC are subject to an additional local income tax, which is also progressive.
New York State Disability Insurance (NY SDI): A small deduction that provides temporary cash benefits to eligible wage earners who are disabled by an off-the-job injury or illness.
New York Paid Family Leave (NY PFL): This deduction funds paid time off for eligible employees to bond with a new child, care for a seriously ill family member, or assist when a family member is deployed abroad on active military service.
Pre-tax Deductions: These are deductions taken from your gross pay before taxes are calculated, effectively reducing your taxable income. Common examples include contributions to a 401(k) or traditional IRA, health insurance premiums, and Flexible Spending Accounts (FSAs).
Post-tax Deductions: These deductions are taken from your pay after taxes have been calculated. Examples include Roth 401(k) contributions, union dues, or certain charitable contributions.
How to Use the Calculator
To get an accurate estimate of your take-home pay, simply enter your gross annual salary, select your pay frequency and filing status, and input any allowances or deductions. The calculator will then break down your estimated taxes and deductions, showing you your net pay per pay period.
Important Considerations
This calculator provides an estimate based on current tax laws and common deductions. Your actual take-home pay may vary due to specific tax credits, additional deductions, or changes in tax legislation. It's always a good idea to consult with a financial advisor or tax professional for personalized advice.
NYC Take-Home Pay Calculator
Gross Annual Salary:
Pay Frequency:
Weekly
Bi-weekly
Semi-monthly
Monthly
Annually
Filing Status:
Single
Married Filing Jointly
Head of Household
Number of Federal Allowances:
Number of NY State Allowances:
Number of NYC Allowances:
Annual Pre-tax Deductions Amount:
Annual Post-tax Deductions Amount:
Calculate Take-Home Pay
Estimated Paycheck Breakdown (Per Pay Period)
Gross Pay:
Pre-tax Deductions:
Taxable Income:
Federal Income Tax:
NY State Income Tax:
NYC Local Income Tax:
Social Security Tax:
Medicare Tax:
NY SDI:
NY PFL:
Total Taxes:
Post-tax Deductions:
Total Deductions:
Net Pay (Take-Home Pay):
.calculator-container {
background-color: #f9f9f9;
border: 1px solid #ddd;
padding: 20px;
border-radius: 8px;
max-width: 600px;
margin: 20px auto;
font-family: Arial, sans-serif;
}
.form-group {
margin-bottom: 15px;
}
.form-group label {
display: block;
margin-bottom: 5px;
font-weight: bold;
}
.form-group input[type="number"],
.form-group select {
width: calc(100% – 22px);
padding: 10px;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
}
button {
background-color: #007bff;
color: white;
padding: 12px 20px;
border: none;
border-radius: 4px;
cursor: pointer;
font-size: 16px;
width: 100%;
box-sizing: border-box;
}
button:hover {
background-color: #0056b3;
}
.calculator-result {
margin-top: 20px;
padding: 15px;
border: 1px solid #e0e0e0;
border-radius: 4px;
background-color: #e9ecef;
}
.calculator-result h3 {
color: #333;
margin-top: 0;
border-bottom: 1px solid #ccc;
padding-bottom: 10px;
margin-bottom: 15px;
}
.calculator-result p {
margin-bottom: 8px;
display: flex;
justify-content: space-between;
}
.calculator-result p strong {
flex-basis: 60%;
text-align: left;
}
.calculator-result p span {
flex-basis: 40%;
text-align: right;
font-weight: normal;
}
.calculator-result hr {
border: 0;
border-top: 1px solid #ccc;
margin: 15px 0;
}
function calculateTakeHomePay() {
// Input values
var grossAnnualSalary = parseFloat(document.getElementById('grossAnnualSalary').value);
var payFrequencyMultiplier = parseFloat(document.getElementById('payFrequency').value);
var filingStatus = document.getElementById('filingStatus').value;
var federalAllowances = parseInt(document.getElementById('federalAllowances').value);
var nysAllowances = parseInt(document.getElementById('nysAllowances').value);
var nycAllowances = parseInt(document.getElementById('nycAllowances').value);
var preTaxDeductionsAnnual = parseFloat(document.getElementById('preTaxDeductions').value);
var postTaxDeductionsAnnual = parseFloat(document.getElementById('postTaxDeductions').value);
// Validate inputs
if (isNaN(grossAnnualSalary) || grossAnnualSalary < 0) grossAnnualSalary = 0;
if (isNaN(preTaxDeductionsAnnual) || preTaxDeductionsAnnual < 0) preTaxDeductionsAnnual = 0;
if (isNaN(postTaxDeductionsAnnual) || postTaxDeductionsAnnual < 0) postTaxDeductionsAnnual = 0;
if (isNaN(federalAllowances) || federalAllowances < 0) federalAllowances = 0;
if (isNaN(nysAllowances) || nysAllowances < 0) nysAllowances = 0;
if (isNaN(nycAllowances) || nycAllowances 0) {
if (filingStatus === 'single') {
if (federalAdjustedTaxableIncome <= 11600) {
federalTax = federalAdjustedTaxableIncome * 0.10;
} else if (federalAdjustedTaxableIncome <= 47150) {
federalTax = 1160 + (federalAdjustedTaxableIncome – 11600) * 0.12;
} else if (federalAdjustedTaxableIncome <= 100525) {
federalTax = 5426 + (federalAdjustedTaxableIncome – 47150) * 0.22;
} else if (federalAdjustedTaxableIncome <= 191950) {
federalTax = 17168.50 + (federalAdjustedTaxableIncome – 100525) * 0.24;
} else if (federalAdjustedTaxableIncome <= 243725) {
federalTax = 39119.50 + (federalAdjustedTaxableIncome – 191950) * 0.32;
} else if (federalAdjustedTaxableIncome <= 609350) {
federalTax = 55678.50 + (federalAdjustedTaxableIncome – 243725) * 0.35;
} else {
federalTax = 183647.25 + (federalAdjustedTaxableIncome – 609350) * 0.37;
}
} else if (filingStatus === 'married') { // Married Filing Jointly
if (federalAdjustedTaxableIncome <= 23200) {
federalTax = federalAdjustedTaxableIncome * 0.10;
} else if (federalAdjustedTaxableIncome <= 94300) {
federalTax = 2320 + (federalAdjustedTaxableIncome – 23200) * 0.12;
} else if (federalAdjustedTaxableIncome <= 201050) {
federalTax = 10852 + (federalAdjustedTaxableIncome – 94300) * 0.22;
} else if (federalAdjustedTaxableIncome <= 383900) {
federalTax = 34337 + (federalAdjustedTaxableIncome – 201050) * 0.24;
} else if (federalAdjustedTaxableIncome <= 487450) {
federalTax = 78239 + (federalAdjustedTaxableIncome – 383900) * 0.32;
} else if (federalAdjustedTaxableIncome <= 731200) {
federalTax = 111357 + (federalAdjustedTaxableIncome – 487450) * 0.35;
} else {
federalTax = 195804.50 + (federalAdjustedTaxableIncome – 731200) * 0.37;
}
} else { // Head of Household
if (federalAdjustedTaxableIncome <= 16550) {
federalTax = federalAdjustedTaxableIncome * 0.10;
} else if (federalAdjustedTaxableIncome <= 63100) {
federalTax = 1655 + (federalAdjustedTaxableIncome – 16550) * 0.12;
} else if (federalAdjustedTaxableIncome <= 100500) {
federalTax = 7265 + (federalAdjustedTaxableIncome – 63100) * 0.22;
} else if (federalAdjustedTaxableIncome <= 191950) {
federalTax = 15443 + (federalAdjustedTaxableIncome – 100500) * 0.24;
} else if (federalAdjustedTaxableIncome <= 243700) {
federalTax = 37259 + (federalAdjustedTaxableIncome – 191950) * 0.32;
} else if (federalAdjustedTaxableIncome 0) {
if (filingStatus === 'single' || filingStatus === 'hoh') {
if (nysAdjustedTaxableIncome <= 8500) {
nysTax = nysAdjustedTaxableIncome * 0.04;
} else if (nysAdjustedTaxableIncome <= 12800) {
nysTax = 340 + (nysAdjustedTaxableIncome – 8500) * 0.045;
} else if (nysAdjustedTaxableIncome <= 17000) {
nysTax = 533.50 + (nysAdjustedTaxableIncome – 12800) * 0.0525;
} else if (nysAdjustedTaxableIncome <= 21200) {
nysTax = 754 + (nysAdjustedTaxableIncome – 17000) * 0.059;
} else if (nysAdjustedTaxableIncome <= 80650) {
nysTax = 1002.80 + (nysAdjustedTaxableIncome – 21200) * 0.0625;
} else if (nysAdjustedTaxableIncome <= 215400) {
nysTax = 4809.68 + (nysAdjustedTaxableIncome – 80650) * 0.0685;
} else if (nysAdjustedTaxableIncome <= 1077550) {
nysTax = 14064.53 + (nysAdjustedTaxableIncome – 215400) * 0.0965;
} else if (nysAdjustedTaxableIncome <= 5000000) {
nysTax = 97600.08 + (nysAdjustedTaxableIncome – 1077550) * 0.103;
} else if (nysAdjustedTaxableIncome <= 25000000) {
nysTax = 495000.08 + (nysAdjustedTaxableIncome – 5000000) * 0.109;
} else {
nysTax = 2675000.08 + (nysAdjustedTaxableIncome – 25000000) * 0.109; // Max bracket
}
} else { // Married Filing Jointly
if (nysAdjustedTaxableIncome <= 17150) {
nysTax = nysAdjustedTaxableIncome * 0.04;
} else if (nysAdjustedTaxableIncome <= 25650) {
nysTax = 686 + (nysAdjustedTaxableIncome – 17150) * 0.045;
} else if (nysAdjustedTaxableIncome <= 34200) {
nysTax = 1067.75 + (nysAdjustedTaxableIncome – 25650) * 0.0525;
} else if (nysAdjustedTaxableIncome <= 42700) {
nysTax = 1510.38 + (nysAdjustedTaxableIncome – 34200) * 0.059;
} else if (nysAdjustedTaxableIncome <= 161550) {
nysTax = 2005.88 + (nysAdjustedTaxableIncome – 42700) * 0.0625;
} else if (nysAdjustedTaxableIncome <= 323200) {
nysTax = 9611.88 + (nysAdjustedTaxableIncome – 161550) * 0.0685;
} else if (nysAdjustedTaxableIncome <= 2155350) {
nysTax = 20599.88 + (nysAdjustedTaxableIncome – 323200) * 0.0965;
} else if (nysAdjustedTaxableIncome <= 5000000) {
nysTax = 197000.08 + (nysAdjustedTaxableIncome – 2155350) * 0.103;
} else if (nysAdjustedTaxableIncome 0) {
if (filingStatus === 'single' || filingStatus === 'hoh') {
if (nycAdjustedTaxableIncome <= 12000) {
nycTax = nycAdjustedTaxableIncome * 0.03876;
} else if (nycAdjustedTaxableIncome <= 25000) {
nycTax = 465.12 + (nycAdjustedTaxableIncome – 12000) * 0.04171;
} else if (nycAdjustedTaxableIncome <= 50000) {
nycTax = 1006.25 + (nycAdjustedTaxableIncome – 25000) * 0.04228;
} else { // Over 50,000
nycTax = 2063.35 + (nycAdjustedTaxableIncome – 50000) * 0.0425;
}
} else { // Married Filing Jointly
if (nycAdjustedTaxableIncome <= 21600) {
nycTax = nycAdjustedTaxableIncome * 0.03876;
} else if (nycAdjustedTaxableIncome <= 45000) {
nycTax = 839.22 + (nycAdjustedTaxableIncome – 21600) * 0.04171;
} else if (nycAdjustedTaxableIncome <= 90000) {
nycTax = 1809.96 + (nycAdjustedTaxableIncome – 45000) * 0.04228;
} else { // Over 90,000
nycTax = 3702.56 + (nycAdjustedTaxableIncome – 90000) * 0.0425;
}
}
}
nycTax = Math.max(0, nycTax);
// — FICA Taxes (Social Security & Medicare) —
var ficaSSTax = 0;
var ficaMedTax = 0;
var ssWageBaseLimit = 168600; // 2024 SS wage base limit
var ssRate = 0.062;
var medRate = 0.0145;
ficaSSTax = Math.min(grossAnnualPay, ssWageBaseLimit) * ssRate;
ficaMedTax = grossAnnualPay * medRate;
// — NY SDI & PFL —
var nysSdiAnnual = Math.min(grossAnnualPay * 0.005, 31.20); // 0.5% of weekly wage, max $0.60/week ($31.20 annually)
var nysPflAnnual = Math.min(grossAnnualPay * 0.00455, 406.64); // 0.455% of gross, max $406.64 annually (based on 2024 SAWW $1718.15)
// Total Annual Taxes
var totalAnnualTaxes = federalTax + nysTax + nycTax + ficaSSTax + ficaMedTax + nysSdiAnnual + nysPflAnnual;
// Total Annual Deductions
var totalAnnualDeductions = preTaxDeductions + postTaxDeductions + totalAnnualTaxes;
// Net Annual Pay
var netAnnualPay = grossAnnualPay – totalAnnualDeductions;
// Per Pay Period Calculations
var grossPayPerPeriod = grossAnnualPay / payFrequencyMultiplier;
var preTaxDeductionsPerPeriod = preTaxDeductions / payFrequencyMultiplier;
var postTaxDeductionsPerPeriod = postTaxDeductions / payFrequencyMultiplier;
var federalTaxPerPeriod = federalTax / payFrequencyMultiplier;
var nysTaxPerPeriod = nysTax / payFrequencyMultiplier;
var nycTaxPerPeriod = nycTax / payFrequencyMultiplier;
var ficaSSTaxPerPeriod = ficaSSTax / payFrequencyMultiplier;
var ficaMedTaxPerPeriod = ficaMedTax / payFrequencyMultiplier;
var nysSdiPerPeriod = nysSdiAnnual / payFrequencyMultiplier;
var nysPflPerPeriod = nysPflAnnual / payFrequencyMultiplier;
var totalTaxesPerPeriod = totalAnnualTaxes / payFrequencyMultiplier;
var totalDeductionsPerPeriod = totalAnnualDeductions / payFrequencyMultiplier;
var netPayPerPeriod = netAnnualPay / payFrequencyMultiplier;
var taxableIncomePerPeriod = (grossAnnualPay – preTaxDeductions) / payFrequencyMultiplier;
// Display Results
document.getElementById('grossPayPerPeriod').innerText = '$' + grossPayPerPeriod.toFixed(2);
document.getElementById('preTaxDeductionsPerPeriod').innerText = '$' + preTaxDeductionsPerPeriod.toFixed(2);
document.getElementById('taxableIncomePerPeriod').innerText = '$' + taxableIncomePerPeriod.toFixed(2);
document.getElementById('federalTaxPerPeriod').innerText = '$' + federalTaxPerPeriod.toFixed(2);
document.getElementById('nysTaxPerPeriod').innerText = '$' + nysTaxPerPeriod.toFixed(2);
document.getElementById('nycTaxPerPeriod').innerText = '$' + nycTaxPerPeriod.toFixed(2);
document.getElementById('ficaSSTaxPerPeriod').innerText = '$' + ficaSSTaxPerPeriod.toFixed(2);
document.getElementById('ficaMedTaxPerPeriod').innerText = '$' + ficaMedTaxPerPeriod.toFixed(2);
document.getElementById('nysSdiPerPeriod').innerText = '$' + nysSdiPerPeriod.toFixed(2);
document.getElementById('nysPflPerPeriod').innerText = '$' + nysPflPerPeriod.toFixed(2);
document.getElementById('totalTaxesPerPeriod').innerText = '$' + totalTaxesPerPeriod.toFixed(2);
document.getElementById('postTaxDeductionsPerPeriod').innerText = '$' + postTaxDeductionsPerPeriod.toFixed(2);
document.getElementById('totalDeductionsPerPeriod').innerText = '$' + totalDeductionsPerPeriod.toFixed(2);
document.getElementById('netPayPerPeriod').innerText = '$' + netPayPerPeriod.toFixed(2);
}
// Run calculation on page load with default values
window.onload = calculateTakeHomePay;