Gross-to-net payroll tax, as an API.
Send a tax profile, earnings, deductions and year-to-date figures. Get back every tax to withhold — employee and employer side — with the rule cited and the ruleset version pinned, so any historical paycheck reproduces exactly during an audit.
I'm building it, and I'm asking payroll engineers whether it should exist before I write the engine. If you run payroll infrastructure, tell me what you use today — I'll send you what I learn from everyone I ask.
The part nobody gets right
Withholding is not one hard problem. It's a matrix of small ones that multiply.
- Two W-4 generations
- Pre-2020 and 2020-onward take entirely separate calculation paths. The Step 2 checkbox selects a different table.
- Supplemental wages
- Flat rate or aggregate method, with a higher mandatory rate above the annual threshold.
- Wage bases that move
- Social Security stops at a base that changes every year. Medicare never stops, and adds a surtax above a threshold with no employer match.
- Local jurisdictions
- Pennsylvania Act 32: thousands of taxing jurisdictions, PSD codes, resident versus non-resident rates, withhold-the-higher-of. Ohio: roughly 600 municipalities plus JEDDs and school districts, courtesy withholding, occasional-entrant thresholds. Kentucky occupational fees by city and county. Indiana county tax keyed to residence on a fixed date.
- Reciprocity
- Withhold for residence instead of work location — but only if the employee filed the right exemption certificate. Get it backwards and you have withheld for the wrong state all year.
Pre-tax conformity
The one that breaks every hand-rolled engine. A deduction's treatment differs per tax and per state.
| Deduction | Federal income tax | FICA | State |
|---|---|---|---|
| 401(k) deferral | exempt | subject | taxable in PA |
| Section 125 medical | exempt | exempt | varies |
| HSA | exempt | exempt | not recognised in CA |
Scope
What it will do
- Federal withholding — both W-4 generations, percentage method, supplemental flat and aggregate
- FICA with wage-base tracking, Medicare, Additional Medicare surtax
- FUTA and SUI wage bases
- State withholding — the twelve largest by employment, plus the nine states that have none
- PA Act 32, Ohio municipal and school district, NYC and Yonkers, Maryland county, Indiana county, Kentucky occupational
- Full pre-tax conformity matrix
- Reciprocity for covered state pairs
- Every response pinned to a ruleset version
What it will not do
- File anything
- Move money
- Store employee records
- Generate year-end forms
It is a calculation. That's the entire product. Integration should take an afternoon.
Shape of a request
Illustrative. The engine does not exist, so this is a design sketch, not documentation.
POST /v1/calculate
{
"check_date": "2026-02-13",
"pay_frequency": "biweekly",
"employee": {
"residence": { "state": "OH", "locality": "Columbus" },
"work_locations": [{ "state": "OH", "locality": "Dublin", "percent": 100 }],
"federal_w4": { "version": 2020, "filing_status": "single",
"step2_checkbox": true, "dependents_amount": 2000 }
},
"earnings": [{ "type": "regular", "amount": 3200.00 },
{ "type": "bonus", "amount": 5000.00 }],
"pre_tax": [{ "type": "401k", "amount": 480.00 }],
"ytd": { "gross": 22400.00, "ss_wages": 21980.00 }
}How you'll know it's right
IRS Publication 15-T publishes worked examples for both W-4 generations. Some state employer guides publish a handful. Those become golden test vectors — public, CC0, citation on every case, and useful to a competitor, which is the point. A test suite only its author can run proves nothing.
Every vector is labelled authority-sourced orauthor-derived, and pass rates are reported separately, never blended. That distinction matters most where this is hardest: Ohio's ~600 municipalities and Pennsylvania's Act 32 matrix publish almost no official worked examples, so vectors covering them are one person's reading of the rules. A high score there measures careful transcription, not correctness — and you should be told that rather than sold past it.
What would actually verify an engine is a parallel run against an incumbent's real paystubs for a quarter. Nothing here substitutes for that.
You should not have to trust a vendor's accuracy claim. You should be able to read the failures.
The vector repository is being transcribed now. It publishes with the first batch — the schema, runner and methodology are written; the numbers are copied by hand from the source, never generated.
Right now
Nothing is built. No signup, no waitlist theatre.
Intended pricing, so you can answer usefully rather than politely: banded on employees calculated per month, published as a table, in the region of$99 to $1,500 per month. No "contact us". If that number makes this a no, that is exactly the reply worth sending.
If you run payroll infrastructure and have opinions about Ohio municipal tax, I want to hear them. Especially if you evaluated Zeal's Abacus before it was withdrawn.
withhold@labstack.com