From 36 to a verified 100: rebuilding a benefits site for the phones that actually visit it
USA Benefits Navigator exists for one reason: to help people find government assistance — food stamps, Medicaid, rent help, energy bills. The people who need that page most are, almost by definition, the people with the oldest phones and the thinnest data plans. And the page was making them download roughly 2.3MB of JavaScript before it showed them a single word. By the end of one day, it was a 41KB page with a live, verified 100/100/100/100 mobile PageSpeed score — and not a single ad, donation ask, or tracker on it.
What we found when we finally looked at what was actually live
The site had been built as a React application — and not just React, but React compiled in the visitor's browser: the framework, ReactDOM, and the Babel compiler all downloaded from a CDN on every visit, so the phone had to fetch and run about 2.3MB of machinery before the page's real content existed at all. When we first measured this architecture, it scored a 36 on mobile Performance. On a fast laptop it felt fine, which is exactly how a site for people on old phones ends up built this way: it never feels broken to the person building it.
Slow was the smaller problem. On a benefits site, the content being wrong is the one that actually hurts someone — a stale program isn't clutter, it's a dead end handed to a person in crisis. The honest inventory:
Finding
Why it matters
Fixed
Affordable Connectivity Program still listed
The ACP is defunct — its funding lapsed. The page was telling visitors to go apply to a program that no longer accepts anyone.
Removed
Emergency Rental Assistance still listed
A pandemic-era program that has wound down — the same dead end, aimed at people facing eviction.
Removed
LIHEAP listed twice under two names
The same energy-assistance program appeared as two different cards in two categories, padding the count and confusing the list.
Deduplicated
"24 programs" claimed in the copy and social tags
After removing the dead programs and the duplicate, the honest number is 21. Every count on the page and in its metadata now says 21.
Corrected
Content invisible to search engines and screen readers until JavaScript ran
Crawlers and assistive tech initially saw an empty page. A site that exists to be found couldn't be read by the thing people find sites with.
Rebuilt static
The rebuild: one file, no framework
The replacement is a single static HTML file. All 21 programs — every name, eligibility rule, and how-to-apply — are real HTML in the page from the first byte, which means Google can index "how to apply for LIHEAP" and a screen reader can read it without waiting for anything to compile. The interactive parts didn't need a framework:
Program cards are native <details> elements — they expand and collapse with the keyboard, announce correctly to screen readers, and keep working with JavaScript switched off entirely.
Search and category filtering is about 60 lines of plain JavaScript — the part of the old 2.3MB payload the visitor actually experienced.
The site's structured data had always promised a ?search= URL that searches the site. Now it genuinely does — the schema went from aspiration to fact.
Several text colors the old version shipped measured below the WCAG AA contrast minimum — including white text on a bright green button at roughly 2:1. All darkened to passing variants that keep the same character.
Proper heading structure, a working skip link, labeled search, 48px touch targets, and decorative emoji hidden from screen readers — the checklist we hold every build to.
The before and after, in the only units that matter to a phone on one bar of LTE:
BEFORE React + ReactDOM + Babel + app code
~2.3MB of JavaScript before first real content
mobile Performance when first measured: 36
AFTER one static HTML file, ~60 lines of JS
41KB total — about 98% smaller
mobile PageSpeed, verified live July 4, 2026:
100 / 100 / 100 / 100
Then we removed the money
The old page carried a Google AdSense tag and a donation button. Both are normal things for a free site to have, and neither was implemented dishonestly. We removed both anyway, and the reasoning is worth stating plainly: the visitors this site serves are, by definition, people having a hard time paying for things. Running ads against those visits monetizes them involuntarily — and ad networks on benefits-related pages have a documented habit of serving exactly the predatory-lending offers those visitors are most vulnerable to. The donation ask was gentler, but a benefits site where nothing on the page wants anything from you is a cleaner promise than one where almost nothing does.
So today the page makes no requests of its visitors and no requests to third parties — no ads, no asks, no analytics, no trackers. The only external links on it are the official .gov pages where people actually apply. The commercial work this studio does for law firms and businesses is what pays for that; the free work stays free all the way down.
The verified result
Per our standing policy, scores are reported exactly as measured, never rounded, never re-run until a flattering number appears: 100 Performance, 100 Accessibility, 100 Best Practices, 100 SEO, mobile, measured live on Google PageSpeed Insights on July 4, 2026, after the rebuild and the monetization removal were both deployed. A sitemap and robots.txt were created and submitted to Search Console the same day — pointing Google, for the first time, at a page it can actually read.
Standing commitment: a benefits directory is never finished, because programs change. The two dead programs we removed today were live and legitimate when they were added — the failure wasn't adding them, it was not re-checking. This site now falls under the same quarterly accuracy review as everything else we maintain: every listed program gets re-verified against its official source, and the count changes when reality does.
Why this one matters more than a portfolio number
Most of what we publish is proof of competence aimed at future clients — audits of law firms, city governments, credit unions. This one is different. A perfect score on a benefits site isn't a trophy; it's the difference between the page loading or not loading for someone in a parking lot with one bar of signal, trying to figure out how to feed their kids this month. That's who the 100 is for.
The rebuilt site is live at usabenefitsnavigator.com — free, with nothing on it that wants anything from you.