2026 San Francisco business website report
The San Francisco sites we tested kept pace on speed. Their text didn't.
Some text failed the color-contrast check on 84% of the 44 sites, against 62% in our 31-city sample. Speed came out about the same, 66 against 61. We'd fix the words people came to read first.
The widest gap we found on these San Francisco sites has nothing to do with speed. 37 of the 44 we tested failed the color-contrast check, which means at least some text on the page sits too close to the color behind it. Across our 31-city sample the figure is 62%. It doesn't tell us how much text failed, or which text. It tells us the fault turned up on most homepages here.
The speed scores are less dramatic. The median is 66 against 61, and on a modest sample of 44 sites with one run each, that's about the same. Median blocking time is 215 ms against 277 ms, and weight is 2.88 MB against 3.08 MB. Those are about the same too. The median accessibility score, 88 against 90, is about the same as well, since contrast is only one item in it. So we aren't calling these sites broken. We're saying there's one check here that stands well apart.
Our opinion is that it matters more in this city than most. San Francisco has more than 400 registered Legacy Businesses and a median home built in 1946. A shop with decades behind it, we'd guess, has customers of long standing, and eyes don't improve with age. Fixing contrast is often a change of colors and not a new site. Check your site, read the contrast section in Google's PageSpeed Insights, and if it's flagged, a design fix may be the whole job. Repairs start at $149.
Measured November 7, 2026
We tested 44 San Francisco business websites on a phone.
Independent businesses with a San Francisco street address on their own site. Totals only: we do not name anyone. How we tested.
66 of 100
Median mobile speed score
31-city sample: 61
7.1 seconds
Until the main content shows
On a simulated mid-range phone. 31 cities: 7.4s
80% of sites
Took over 4 seconds
35 of 44 tested
11% of sites
Let a visitor book online
31 cities: 10%
Scores for San Francisco are from our own test, described under How we tested.
What it means
Good enough to load, harder to read.
The contrast check stands alone.
84% against 62% is the one gap here we'd expect to survive a retest, though a retest could still narrow it. A failure on this check means some elements fell short, and we didn't count how many per page. It might be a single gray caption. It might be a whole paragraph. Open your own report and see. Design upgrades can handle the larger cases.
Speed is a shrug, and a fine one.
The middle half of scores runs 54 to 72, against 49 to 73 across the sample. The poor band holds 8 of 44, 18% against 26%. 3 reached the good band. Main content still takes a median of 7.1 seconds on a simulated phone, which isn't fast, just common. If yours is slow, fix it, but this data doesn't make speed the headline here.
Other reading checks turned up in small numbers.
Text too small to read comfortably turned up on 4 of 44 sites, against 2% in the sample. That is a few sites, so call it a hint. Median SEO scores are 92 here and 92 in the sample. 41% of sites set third-party cookies, against 54%, and we didn't measure who set them. We wouldn't build anything on these. They're here so you know we looked. Here's what the speed figures mean if you want more.
The ways in are about what you'd find elsewhere.
Tap-to-call is on 73% of homepages, against 72%. A phone link is the only way in we counted on 43%, against 45%. Lead forms run 30% against 31%, and a lead form can be a newsletter sign-up. Booking is on 5 of 44 and chat on 5, too few to read anything into. Adding a second way in is still cheap, wherever you are.
How San Francisco sites ask for the business
32 San Francisco sites · 31-city sample: 72%
13 San Francisco sites · 31-city sample: 31%
5 San Francisco sites · 31-city sample: 10%
26 San Francisco sites · 31-city sample: 45%
Most common failures
- Text with too little color contrast84%
- Links with no discernible name52%
- Uses third-party cookies41%
- Headings that skip levels40%
- Browser errors logged in the console34%
- Links with vague text ("click here")25%
Free tool
How does your site compare with the rest of San Francisco?
Give it your address and you get a graded report in about twenty seconds. It runs its own checks, so its grade isn't comparable with our speed scores. These three you can check yourself, against what we counted in San Francisco:
- 73% have a tap-to-call link
- 77% have a search description
- 59% tell search engines what kind of business they are
Who does business in San Francisco
Who loses most when the type goes pale.
Legacy Businesses and long-running shops
More than 400 businesses are on the city's Legacy Business registry. We didn't test those sites as a group, so we can't speak for them. Our opinion is that a business with decades behind it has a story worth telling in type a person can read.
The site has to: tell the story once and well, keep hours and address in plain text, and show the place as it is now.
Website redesignLaw, accounting and advisory offices
Professional, scientific and technical services is a main industry, and financial services is another. The 13 professional-services sites we tested post a median speed score of 68, against 64 in the sample, and 38% have a lead form, against 37%. It's a small group, and those gaps are nothing to lean on.
The site has to: name the people, say what you handle, make the small print legible, and have your counsel or adviser read the claims.
Law firm website designIndependent clinics and practices
UCSF Health and Sutter Health are among the big employers, so an independent practice has large neighbors. The 12 health sites we tested post a median speed score of 55 against 61. 3 had a booking tool and 5 had a homepage lead form, on a small group.
The site has to: make instructions easy to read for a patient who's tired or worried, and ask your adviser what a web form may collect.
Healthcare website designStartups and software teams
Information and technology, including AI, is a main industry, and Salesforce is among the big employers. Our read is that this reader spots a template quickly and has opinions about it.
The site has to: say what the product does on the first screen, show it working, and make sure signup finishes.
Startup websitesContractors and old-house trades
Construction is a main industry, and the median San Francisco home was built in 1946. We'd expect a house that age to keep a tradesperson busy. Our test had too few contractors to treat them as a group.
The site has to: show older-home work in your own photographs, say what you'll take on, and let the owner send a picture with the request.
Construction websitesRestaurants and hospitality
Leisure and hospitality is a main industry, and Outside Lands, Fleet Week and the Lunar New Year parade are on the calendar. Our test caught too few restaurants to treat them as a group.
The site has to: put the menu in real text with real contrast, since a pale font over a photo of pasta helps no one, and post event hours early.
Restaurant website designSan Francisco by the numbers
830,235
Population
Census Reporter — San Francisco, CA (ACS figures are 2020–2024 five-year; page opens on one-year)$140,970
Median household income
Census Reporter — San Francisco, CA (ACS figures are 2020–2024 five-year; page opens on one-year)66,917
Business establishments (San Francisco County)
BLS QCEW 2025 annual averages — San Francisco County46.7 sq mi
Land area
Census Reporter — San Francisco, CA (ACS figures are 2020–2024 five-year; page opens on one-year)1946
Median year homes were built
Census Reporter — San Francisco, CA (ACS figures are 2020–2024 five-year; page opens on one-year)Businesses online
Statewide, 60% of California small businesses use an AI platform (state scope; survey fielded June 2025).
U.S. Chamber of Commerce — Empowering Small Business 2025 (state scorecards)Before you spend a dollar
Five edits, none of which is a new logo.
- 1
Find the failing text before you change anything.
The report in PageSpeed Insights lists contrast failures by element. It might be one footer line or it might be your whole body font. That difference decides whether you need a small fix or a longer conversation.
- 2
Put the brand guide on trial.
We didn't measure which colors these sites use, or who chose them. If your palette calls for pale gray on white, the palette can keep the logo. Body text deserves something darker, and it usually costs nothing to choose.
- 3
Check the words on top of photographs.
An automated check can miss text over an image, so use your eyes. Hold the phone at arm's length, near a window. If the headline vanishes, it needs a backing or a new place to live. Mobile fixes cover this kind of thing.
- 4
Don't buy speed you don't need.
Median speed here is 66. If your own score is near or above that and your pages feel fine, we'd spend elsewhere first. If it's well under, a speed fix belongs on the list. WordPress sites here post 66 and those on no known platform 68, so this is no case for moving, as our comparison explains.
- 5
Keep the history, lose the squint.
If you've been open for decades, the old photographs and the founding story are assets, and a redesign shouldn't sand them off. Put them in readable type. We'd read this note on showing your work before writing a word.
Local marketing
Forty-seven square miles and a place to spend first.
Search opportunities
Searches an old house or an old shop might answer.
Our read of what buyers here need answered, not search-volume figures.
“Who works on older houses in San Francisco?”
The median home here dates to 1946, so we'd expect this question to have takers. A contractor with photographs of that work has the page half-written.
Home service marketing“How long has this shop been around?”
If you're on the Legacy Business registry, say so plainly. It's a fact a new competitor can't copy, and a short history page gives you somewhere to put it.
Content marketing“Where can we eat before Outside Lands?”
It's every August in Golden Gate Park. A plain page with your hours that week answers the question for someone who's already on the way.
Restaurant marketing“Can I book a San Francisco doctor online?”
We found a booking tool on 3 of the 12 health sites we tested. A practice that can say yes should say it on the page, in text you don't have to squint at.
Healthcare websites
What it costs
Our prices, in a color you can read.
Sites up to 70 pages run $1,500 to $5,750 at a fixed price, by page count. Online stores start at $2,500, and repairs at $149. Custom web apps begin at $575, depending on complexity. We publish the figures so that a San Francisco business can compare them without taking a meeting.
Website, up to 10 pages
$1,500
fixed price
Website, 11 to 20 pages
$2,250
fixed price
Website, 21 to 50 pages
$3,750
fixed price
Website, 51 to 70 pages
$5,750
fixed price
- Online storeFrom $2,500
- Web app, portal or integrationFrom $575***
- Mobile appFrom $3,750
- SEO, local marketing or PPCFrom $575 a month***
***Pricing depends on complexity. ***Pricing depends on complexity, setup and budget. Ad spend is paid to the ad platform directly.
See every priceThe San Francisco playbook
Start with the type. End with the calendar.
- 1
Find out what failed.
Run the health check for a graded report, then Google's PageSpeed Insights on mobile and read its accessibility section. That second test is the one comparable with our figures. 84% of sites failed on contrast here, so don't take a clean-looking page on faith.
- 2
Fix it in one place.
Colors usually live in a theme or a stylesheet, so one good change can reach every page. Theme fixes have their own page. Check links, buttons and form hints too, since those are easy to overlook.
- 3
Label the form while you're at it.
On the forms we found here, 13 of 63 fields had no label, ARIA name or title we could detect. A placeholder that disappears is no label. Then send a test message, since a quiet form failure can go on for months.
- 4
Tell the story, if you've got one.
If you've been at this for decades, one page that says so is worth writing. Use your own photographs and your own dates. We can help with the writing, though the memories are yours.
- 5
Work the calendar you actually use.
Lunar New Year parade in February or March, Bay to Breakers in May, Pride in late June, Outside Lands in August, Hardly Strictly Bluegrass and Fleet Week in October. Pick what your trade depends on and update your Google Business Profile that week. Skip the rest with a clear conscience.
Recent work
Modern builds we've shipped.

Digital Yard Sign SEO
SaaS · Subscription Local SEO Platform
Every completed job becomes a ranking page: a tech checks in from the driveway, and the platform builds and syndicates a geo-tagged SEO page automatically.

Core Construction Group
Construction & Remodeling
A dark, modern build for a veteran-owned Phoenix construction group whose pitch is the org chart: you deal with the owner, not a subcontractor chain.

Precision Leak Detection
Leak Detection
A WordPress leak-detection site rebuilt on Next.js, built around the one promise a homeowner with water under the slab wants to hear: found today, marked to the spot, and written down.

Bleuwave Handyman
Handyman & Home Services
A WordPress site rebuilt on Next.js for speed, one crew, forty-plus services, same-day slots, and a category-driven booking flow that turns the honey-do list into a full schedule.
Simply amazing!
They took our outdated website and transformed it into a modern, user-friendly platform that truly represents our brand.
They made the technical side feel clear.
We talked about goals first — then platforms, content, search, and automation.
Start here
Tell us what you need in San Francisco.
Pick what you want and the price appears on the spot. The developer follows up, not a salesperson.
Prefer to talk? (480) 525-7582.
See what your project costs. It takes about a minute.
Rather talk? (480) 525-7582. 0% financing on any project, 25% down. See all pricing
San Francisco website questions, answered.
How did San Francisco sites do on speed?
Close to the sample we compare them with. Median mobile score was 66 across 44 sites, against 61 in our 31-city sample. Main content showed in a median of 7.1 seconds on a simulated mid-range phone. That's one lab run per site, and the sample is modest, so it's no grade on anyone.
What does failing the contrast check mean?
Some text on the page sat too close to its background color for the check to pass. It doesn't mean all of it did, and we didn't count how much. It's often a small fix, but look at your own report before assuming so.
Why are these results different from the sample?
We don't know, and we didn't measure why. We can tell you what the check found and not who picked the colors.
What are you comparing San Francisco with?
1274 independent business sites across 31 US cities, tested the same way, including these San Francisco sites. It's not a national average and it doesn't represent the country. Small gaps against it mean little.
What does this cost?
Repairs start at $149. Websites run $1,500 to $5,750 up to 70 pages at a fixed price, and online stores start at $2,500. Everything is published, and web apps start from $575, depending on complexity.
Could my business be one of the sites you tested?
Possibly, and we won't say. Only totals get published, with no names. The free Website Health Check grades your site on its own scale, and PageSpeed Insights from Google uses the Lighthouse engine we did, so try that for figures you can compare.
Method
How we tested.
We started from OpenStreetMap business listings, independents only, screened 78 candidate sites in a shuffled, evenly mixed order, and kept 44 independent businesses that publish a San Francisco street address on their own site. We left out national chains, referral sites, parked or broken domains, and sites that block automated tests, along with anything we built ourselves.
Each homepage got one run of Google Lighthouse 12.6.0: mobile form factor (412 x 823 screen emulation), Lighthouse default simulated throttling (150 ms round trip, 1.6 Mbps throughput, 4x CPU slowdown), headless Chrome, one run per site. 44 runs completed. A second pass in headless Chrome looked for tap-to-call links, forms, booking tools and search markup, on the homepage only, so a form on a contact page or an email link doesn't count. A form with an email, phone or message field counts as a lead form, which means a newsletter sign-up can count too. Business markup means JSON-LD naming one of the common local-business types, so another format or a more general type isn't counted. Testing ran on November 7, 2026, several sites at a time on one machine.
A lab test is one controlled load, which makes sites comparable with each other. It does not measure any real visitor's experience, and one run per site carries noise. Tests ran several at a time on one machine, and a busy machine lowers speed scores and lengthens blocking time, so we reran the tests taken when it was busiest. Read those two figures as rough, and small gaps as noise. Listings skew toward businesses someone has bothered to map, so read this as a careful sample, not a census. The comparison figures are 1274 sites across 31 US cities, tested the same way, and they include these San Francisco sites. Our Mesa report found its sample through web searches and ran one site at a time, so its figures aren't directly comparable.
- Candidate sites screened
- 78
- San Francisco businesses kept
- 44
- Speed runs completed
- 44
- Tested
- November 7, 2026
- Speed test
- Lighthouse 12.6.0
Sources for the facts on this page
Beat the San Francisco median.
Fifteen minutes, plain English, and a number in writing. If we are not the right fit, we will say so.
