We measured 300 Chicago small-business websites. One in nine did not load.
We took a random sample of 300 independent Chicago-area businesses listed with a website, and loaded each one on an emulated phone. Thirty-three of them could not be used by a normal visitor at all: twenty domains no longer resolve, seven have broken certificates, three never finished loading. Of the 263 that did work, 80% had at least one serious accessibility failure and 55% had no way to tap a phone number.
There is a lot of confident writing about what small-business websites get wrong, and almost none of it contains a number anybody measured. So we measured it.
We took a random sample of 300 independent businesses across the Chicago metro, loaded each site the way a customer on a phone would, and recorded what happened. Every figure below comes from that run. The method is at the bottom, including what it does not prove.
The headline
One in nine of these businesses is listed with a website a customer cannot use.
| What happened | Sites | Share |
|---|---|---|
| Loaded normally | 263 | 87.7% |
| Domain no longer resolves | 20 | 6.7% |
| Certificate broken, browser blocks it | 7 | 2.3% |
| Never finished loading in 30 seconds | 3 | 1.0% |
| Other failure | 3 | 1.0% |
| Excluded, site asked not to be scanned | 4 | 1.3% |
Thirty-three sites, 11% of the sample, are effectively not there. We re-checked every failure by hand afterwards with a different tool from a different network, because a finding like that is worth being sure about. Twenty-one were confirmed completely unreachable on the second pass.
The domain-does-not-resolve group is the one worth sitting with. That is not a slow site or an ugly site. It is a business whose web address has stopped existing, while directories, listings and business cards carry on pointing at it. Nobody gets an error they report. The customer types it, gets nothing, and goes to a competitor.
The 263 that worked
Speed was better than we expected. Median load was 1.4 seconds on an emulated mid-range phone, and 27% came in under a second. Thirteen per cent took more than three seconds and 5% took more than five, which is where visitors genuinely start leaving. The median site made 63 requests and shipped 145 KB of HTML.
That is a more flattering picture than the industry usually paints, and it is worth saying so.
What a new business should actually target
The distribution matters more than the average, because it tells you what you have to beat rather than what is typical.
| Load time | Sites | Share of the market |
|---|---|---|
| Under 1 second | 71 | 27.0% |
| 1 to 2 seconds | 114 | 43.3% |
| 2 to 3 seconds | 44 | 16.7% |
| 3 to 5 seconds | 22 | 8.4% |
| 5 to 10 seconds | 9 | 3.4% |
| Over 10 seconds | 3 | 1.1% |
Two thirds of the market lands between one and three seconds, which is the crowd. The useful thresholds are these:
| To be faster than | You need to load in |
|---|---|
| Half the market | under 1.4 seconds |
| Three quarters of it | under 0.95 seconds |
| Nine in ten | under 0.67 seconds |
| Ninety-five per cent | under 0.48 seconds |
So the honest target for a new small-business site is under a second, which puts you ahead of roughly three quarters of your competitors and is entirely achievable on ordinary hosting. Under 0.7 seconds puts you in the top tenth. Chasing below half a second is real work for a diminishing return unless speed is central to what you sell.
What these numbers are not is Core Web Vitals. This is time to the load event, which is comparable across the sample but is not the metric Google reports on. Largest Contentful Paint, the one that matters for rankings, is usually earlier than the load event and needs measuring separately.
Accessibility was much worse. We ran an automated WCAG 2.1 A and AA scan on 250 of them.
| Finding | Share |
|---|---|
| At least one serious or critical violation | 80.4% |
| Zero violations | 19.6% |
| Colour contrast failures | 50.4% |
| Links with no discernible name | 43.2% |
| An image with no alt attribute at all | 21% |
| No language set on the page | 8.4% |
Half of these sites have text a person with ordinary age-related vision loss will struggle to read. That is not an edge case, it is a large and generally solvent share of the customers walking past. We wrote separately about what accessibility claims actually target, and this is the ground truth underneath that piece.
The phone basics were missing more often than anything else.
| Missing on the homepage | Share |
|---|---|
| No tappable phone link | 55.1% |
| No form of any kind | 56.7% |
| No structured data for search engines | 40.7% |
| No H1 heading | 29.3% |
| No meta description | 26.6% |
| Blocks pinch-zoom | 9.1% |
More than half of these sites were loaded on a phone and offered no way to tap and call. For a restaurant, a clinic, a salon or a trade, that is the single most likely thing a visitor wants to do, and it is one line of HTML.
The pinch-zoom figure is small but it is the one that annoys us most, because it is a deliberate choice. Nine per cent of these sites actively stop a visitor zooming in, which is a WCAG failure and reads as a designer protecting a layout from the people using it.
What they are built on
| Platform | Share |
|---|---|
| Custom or unidentified | 42.6% |
| WordPress | 24.0% |
| Wix | 9.5% |
| Squarespace | 9.5% |
| Shopify | 5.7% |
| GoDaddy Website Builder | 4.2% |
| Weebly | 3.4% |
| Duda | 1.1% |
WordPress is the largest identifiable platform but it is not the majority. The biggest group is sites our fingerprinting could not name, which is a mix of genuinely custom builds and older hand-made sites that predate the platform era. If you are choosing between the named options, we compared them in WordPress, Wix or Squarespace.
The domains tell their own story
The median domain in this sample is 13.8 years old. These are not startups. They are established businesses, most of which registered a domain more than a decade ago and have been running it since.
GoDaddy holds 44% of them, more than the next five registrars combined. Network Solutions, Tucows, Namecheap and the platform registrars share most of the rest.
That concentration is worth a thought if you are one of the 44%. Not because GoDaddy is bad, but because a great many small businesses have their domain, their hosting and sometimes their email all with one company, and could not tell you the login. That is the arrangement behind most of the outages we get called about, and it is why who built your website is the piece we point people at most.
What we would actually do about it
If you own one of these businesses, the order is not the order you would guess.
Check your site loads. Today, on a phone, on mobile data rather than your own wifi. Seven per cent of this sample would fail that check and none of those owners know.
Add a tappable phone number. Fifty-five per cent are missing it and it costs one line. This is the highest-return change on the entire list.
Run one free contrast check. Half these sites fail it. It is usually a handful of colour values, and it makes the site easier for everybody to read, not just the people who needed it.
Find out who controls your domain. Not who built the site, who the registrar account belongs to. If the answer takes more than five minutes to establish, that is the finding.
Speed is further down the list than the industry implies, at least here. The median site is fine. The problems are that a tenth of them do not exist, and that most of the ones that do make it hard to get in touch.
Method
Sample frame. Businesses in OpenStreetMap tagged with a website inside a bounding box covering Chicago and the surrounding suburbs, roughly 41.60 to 42.15 north and −88.35 to −87.55 west. We kept only shops, offices, crafts, and food, health and personal-service premises. We removed anything carrying a brand or operator tag, anything whose domain appeared at more than one location, and links pointing at social profiles or directories rather than a site. That left 5,230 independent single-location businesses. Chicago accounted for 2,794, Naperville 477, Evanston 96, Skokie 69, Aurora 56, Schaumburg 46.
Sample. 300 drawn at random from those 5,230 using a fixed seed, so the same draw can be reproduced.
Measurement. One page per site, the homepage, loaded in headless Chromium emulating a 390 by 844 phone with touch. We recorded status, redirects, load time to the load event, request count, HTML size, platform fingerprint, and a set of page facts. Accessibility used axe-core 4.10 restricted to WCAG 2.1 A and AA rules. Registrar and creation dates came from whois. Run on 7 September 2026.
Conduct. robots.txt was fetched and honoured before any page loaded, which is why four sites are excluded rather than counted as failures. One site at a time, 2.5 seconds apart, one page each, nothing submitted, and a user agent naming the project.
What this does not prove. OpenStreetMap tags have no timestamp we used, so a dead domain may have died last month or five years ago; what we can say is that a current public listing points at nothing. Automated accessibility testing finds perhaps a third of real barriers, so 80% is a floor rather than a ceiling. Homepages only, so a site with a broken booking page three clicks in counts as working. Load times came from one machine on one connection and are comparable to each other rather than to a lab benchmark. At n=300 the margin of error on these proportions is roughly five and a half points either way.
No business is named. We hold the per-site results and we are not publishing them, because the aggregate is the interesting part and naming a local business as an example of a bad website would be neither kind nor useful.
Why we did this
Partly because we build websites and it is useful to know what we are actually competing with. Mostly because every claim in this industry is asserted and almost none of it is measured, including by us until now. We would rather publish a number that can be checked, and be wrong in public if we are wrong, than add another confident paragraph to the pile.
We intend to run this again next year with the same frame and the same seed logic, so the numbers can be compared rather than merely repeated.