How to use this calculator
You can use this page with a keyboard and your screen reader, such as NVDA, JAWS, or VoiceOver. Use your screen reader to read the instructions and results; this page does not play its own voice.
- Set your household details. Select Michigan or New York, choose your household size, then set your hourly wage in US dollars and your hours worked per week.
- Use the keyboard. Press Tab to move forward through controls and Shift + Tab to move back. Activate buttons with Enter or Space. On a wage or hours slider, use the arrow keys to adjust its value. If your screen reader uses these keys to read the page, switch to its forms or interaction mode.
- Read your results. After you pause an adjustment, the page sends an updated summary to your screen reader. You can also read the summary below, including monthly earnings, cash assistance, SNAP, and total resources.
- Explore every hour without using the chart. Open “View this chart as a data table” below the chart. The table lists results for 0 through 40 hours per week. Use your screen reader’s table navigation to read the column headings and values.
To change sections, focus a tab at the top of the page and press Left or Right Arrow. Home selects the first tab; End selects the last. “Data & Sources” explains the assumptions and sources. “Accessibility Audit Builder” is for recording accessibility tests and is optional.
These are illustrative estimates, not a benefits eligibility decision. Confirm current rules with your state agency before making decisions.
What an extra shift is actually worth
At the wage and hours set above, here's what a household brings home once cash assistance and SNAP are recalculated — using each program's own payment tables, not an average.
View this chart as a data table
How this number is computed
This is a three-layer model: a lookup table of real published payment standards, a small set of documented phase-out rules, and — where the actual caseworker formula isn't public or wasn't independently verified here — a clearly-flagged simplifying assumption.
Build a real audit, not a placeholder
Usability-gap data can't come from a language model or a policy manual — it only means something if it comes from watching real sighted and screen-reader users attempt the same tasks. Enter your own test results below (or load a clearly-marked sample to see how it renders), and the page will build the report live.
1. Portal & session settings
Enter the name of the website or service being tested.
Enter the session timeout in minutes. This records the tested service’s limit; this page does not log you out.
Include the screen reader, browser and versions, for example NVDA with Firefox.
2. Task results
- TaskSightedScreen readerMultiplierCompletion
No tasks recorded yet — add one above, or load the sample set.
3. Report
How the three layers divide the work
This is the architecture underneath the simulator: a rule engine does every calculation, a small model-assisted step is limited to drafting and explaining (never computing), and nothing reaches this page without a named, dated source.
1 — Rule engine
Every dollar figure on this page comes from the lookup tables and formulas below — plain functions, no model in the loop. Same inputs always produce the same output.
2 — Model-assisted drafting
An LLM's role is limited to turning a new policy PDF into a first-draft table row, or explaining a result in plain language — never to generating the number itself.
3 — Human review
Every table row below carries a source, an effective date, and a verification status. Rows aren't live until a second person checks them against the primary source.
Policy data currently loaded
Not modeled yet
Left out of this version rather than approximated with unsourced numbers: housing vouchers (payment standards vary by local housing authority), state and federal EITC, child care assistance, and county-level shelter/home-energy add-ons to New York's cash grant. Medicaid is shown as an eligibility cutoff, not a dollar value, since coverage isn't a cash payment.