Five website mistakes common on small-business sites, and how to spot them on yours
Most small-business websites share the same handful of failure patterns. None of these require a developer to diagnose. You can run all five checks on your own site in about fifteen minutes with a phone and one free tool. The fixes vary in cost from “ten minutes of your time” to “rebuild the site,” but knowing which one you have is the first step.
1. The hero image is uncompressed and 4+ MB
A homepage hero that loads slowly costs you a real share of would-be visitors before they ever see your phone number. A 2019 Portent study found that conversion rates drop an average of 4.42% for every additional second of page-load time between 0 and 5 seconds — so a site loading the hero in 4 seconds rather than 1 converts roughly 13% fewer engaged visitors than the same site loading fast.
How to check: open your site on a phone, on cellular (not your office Wi-Fi). Watch the hero image. If it pops in noticeably after the rest of the page, or there’s a long blank rectangle before it appears, you have this problem.
The fix is almost always trivial. A 4.8 MB JPEG out of an iPhone, exported as a 200 KB WebP, looks identical at the resolutions a phone actually displays — and loads in a fraction of the time. If a developer charges you more than $200 to compress and re-export every image on the site, find a different developer.
If your site was built on Squarespace, Wix, or Webflow, the platform should do this automatically — but it doesn’t always, especially if the image was uploaded as a PNG. Open one in a desktop browser, right-click, copy the URL, and check the file size. If it’s over 500 KB for a website image, you’ve found the problem.
2. The phone number isn’t tappable on mobile
A surprising number of small-business sites — particularly trades, restaurants, and medical offices — display their phone number as a plain <span> instead of an <a href="tel:...">. A customer on a phone has to memorize the number, switch apps, and type it in. A meaningful share won’t bother.
How to check: pull up your site on your phone. Tap the phone number in the header. Does the dialer open? If you have to long-press, copy, paste — that’s a fail.
The fix is fifteen seconds of HTML for any competent developer. If your site is on a builder platform, there’s usually a “click to call” component you can drag in. If your developer pushes back with “it doesn’t look right with the underline” — the answer is “make it not look like a link, but make it tappable.” Both things can be true; CSS exists for this reason.
A related issue: phone numbers stored as images so they “look nice.” A customer can’t tap an image. A screen reader can’t read it. Google can’t extract it into search results. You are paying, in lost leads, for a font choice.
3. The contact form sends to a Gmail nobody checks
Somebody set up the contact form on the site, pointed it at info@yourshop.com, and that inbox now accumulates form submissions mixed with newsletters and vendor emails. Real leads get buried; the only thing that gets answered is whichever submission happens to land at the top of the inbox when someone opens it.
A common failure mode: the contact form’s sender domain doesn’t match the destination domain, Gmail flags it as spam, and quote requests sit in the spam folder indefinitely.
How to check: send a test submission from your site through the contact form. Look in: inbox, promotions tab, spam folder, and “all mail.” Time how long it takes to find. If you can’t find it within 30 seconds, your real leads are also unfindable.
The fix is a small piece of plumbing on the back end of the form: send notifications via SMS, Slack, or a dedicated leads inbox that no other email touches. Whatever’s appropriate for how you actually work. For a one-person shop, “every form submission sends me a text message” is often the most reliable. For a growing operation, a tracked leads inbox separate from general correspondence is the right answer.
Cost: this should be part of any new site build. If you’re paying for a website and the developer is not asking you “how do you want to be notified when someone fills out the form,” that’s a warning sign about the rest of the build too.
4. The site doesn’t say what town you’re in until the footer
This one is mostly an SEO problem, but it’s also a trust problem. A customer landing on your site for the first time wants to know within a few seconds: are you in their area? A site that says “serving the tri-state region” or “your trusted local partner” without a single specific town name in the visible content is functionally invisible to Google for local searches, and confusing to the customer.
How to check: load your homepage. Without scrolling, can you see the name of your specific town? Not “the area” — the town. Reading. Wyomissing. Sinking Spring. Mohnton. If the answer is no, you have a problem.
The fix touches a few places: the page title, an H1 or H2 in the hero, a paragraph somewhere above the fold mentioning the town and adjacent towns by name, and ideally a dedicated service-area page that lists every town you cover with a couple sentences of substantive content per town. Generic boilerplate like “Reading, Wyomissing, West Reading, Mohnton” stuffed into a footer doesn’t count — Google has gotten better at recognizing keyword stuffing than most local SEO advice keeps up with.
The pattern that does work: a paragraph that demonstrates you actually know the town. “We’ve built sites for shops along Penn Avenue in West Reading and for trades along Lancaster Avenue in Shillington” reads as legitimate because it could only be written by someone who has been to those places. “Serving Reading, Wyomissing, West Reading, Shillington, Mohnton, Sinking Spring, Exeter Township, and Muhlenberg Township” reads as a list copied from a county map.
5. The site was built on a platform you don’t own, and nobody told you what that means
This is the most expensive mistake on the list, and the one most often hidden behind a “the site looks great, what’s the problem” reaction.
If your site is on Wix, Squarespace, Weebly, GoDaddy’s builder, or any “drag-and-drop” tool, here are the things that are true and that nobody explained:
- You are paying a monthly fee in perpetuity, currently $20–$50/month for most plans, which is $240–$600/year forever.
- If you stop paying, the site goes dark. Not “goes back to a previous version” — gone.
- You cannot move the site to another host. The HTML, design, and content are all locked inside the platform’s database. Migration tools that promise “export your site” generally export the text but not the design or the functionality.
- The platform owns your search ranking, in a sense — if the platform’s CDN goes down (and they do), your site goes down with it, and you have no recourse.
- Any custom functionality (booking widget, e-commerce, integrations) is locked to that platform’s set of plugins. Adding something the platform doesn’t natively support ranges from expensive to impossible.
This is not always wrong. For a brand-new business with no budget, $30/month for a working Squarespace site is a perfectly reasonable starting point. The mistake is staying there once the business is established and the monthly cost has exceeded what a one-time build would have cost.
The math: $30/month × 36 months is $1,080. A custom-built static site on Cloudflare or similar costs around $2 to $5 a month to host, and the build cost amortizes over the lifetime of the business. By year three, the builder platform is the more expensive option in most cases, and by year five it is dramatically more expensive — and you still don’t own the code.
How to check: log into the admin of your website. If the URL contains the name of a third-party platform (squarespace.com, wix.com, godaddy.com, weebly.com, shopify.com), you are on a builder. That doesn’t mean you need to move — it means you should know what you’re paying for and what you’d lose if you stopped paying.
How many of these does your site have
If your site has one of these, you have a Saturday-afternoon project. If it has two or three, you have a serious conversation with your developer. If it has four or five, you almost certainly built it cheap and the cumulative cost in lost leads has long since exceeded what a real build would have cost.
We build sites for trades, restaurants, real estate, and professional services across Berks County. Book a 30-minute call if you want a second pair of eyes on your current site — we’ll walk through what’s working, what isn’t, and what would be worth fixing. No pressure either way.