Hand-coded web design for UK trades
Web design for UK trades. Hand-coded, no WordPress, no page builder.
I build websites for trades, home services and local professional businesses by hand. Every line of HTML, every CSS rule, every JavaScript function is written specifically for your business. Not WordPress. Not a drag-and-drop page builder. Not a marketplace theme with 200KB of unused JavaScript that loads before your homepage paints.
The result is a website that scores in the green on Core Web Vitals, ranks for the queries your customers actually type into Google, and doesn't break the week after a CMS update. The prettiest site in the world is worthless if Google can't index it cleanly and your customers can't find it. Ranking is a technical property before it is a marketing property.
Every new build ships with the same level of technical SEO work that this very site has: schema markup across every page type, internal linking architecture built around your services and service areas, Core Web Vitals verified before launch, copy that reads like a human because it was written by one, Open Graph + Twitter Card metadata, sitemap.xml and robots.txt tuned for your business. If you want this same level of work applied to an existing site, that is the Technical SEO Foundation one-off. Pair the build with the Local SEO retainer and the site launches into an SEO retainer that compounds on top of the technical base rather than running on a treadmill.
Hand-coded vs WordPress vs page builders
Why hand-coded, not WordPress, Wix, or Squarespace
The end user sees the same webpage on every platform. What differs is what runs underneath. The table below is the honest comparison of what your site looks like under the hood across the four common approaches for a UK local-business website.
| Property | Hand-coded (mine) | WordPress + theme + builder | Wix / Squarespace |
|---|---|---|---|
| Code ownership | You own the code outright | You own the database, not the PHP | They own the platform, you rent |
| Page weight (homepage) | ~80-150 KB total | ~800 KB – 2 MB typical | ~1.5 MB typical |
| Core Web Vitals (mobile) | 90+ out of the box | 50-70 with tuning, can hit 90 | 60-80 typical |
| Schema.org markup | Custom per page type | Plugin-dependent | Limited |
| Internal linking | Designed into the build | Manual or plugin-dependent | Manual |
| Ongoing cost (year 1) | £1,500 build + £30/mo hosting | £500-2,000 build + £30-100/mo plugin subs | £120-360/yr subscription |
| 3-year total cost of ownership | £2,580 | £2,580 – £5,400 | £360-1,080 (rented, no asset) |
| Editable by you after launch | Yes, full CMS or recorded walkthrough | Yes, if you learn the admin | Yes, drag-and-drop |
| Lock-in | None. Code is yours. | Medium. Migration possible but messy. | High. Migration is a manual rebuild. |
The point is not that Wix is bad and hand-coded is good in some abstract sense. The point is that for a local business whose revenue depends on Google ranking, page weight and Core Web Vitals and schema markup are not optional, they are the ranking signal. A hand-coded site is the only option that gives you all three at the green-light level out of the box.
Why this site will rank
The technical properties that make a site rank, built in from day one
A website that nobody finds is a website that isn't doing its job. Ranking is a technical property before it is a marketing property. The list below is the technical base that ships with every build I do, the same properties this very site has, verified before launch.
Semantic HTML
One H1 per page, proper heading hierarchy, no skipped levels, no div-soup. Crawlable structure without JavaScript rendering.
Schema.org markup
LocalBusiness, Service, FAQPage, BreadcrumbList, HowTo, Article, WebSite + SearchAction, verified in Google Rich Results Test before launch.
Core Web Vitals in the green
Lighthouse mobile score 90+, LCP under 2.5s, INP under 200ms, CLS under 0.1. PageSpeed Insights screenshot taken before launch and saved to your handover.
Image optimisation
WebP/AVIF where supported, lazy loading on below-fold images, explicit width and height to prevent CLS, descriptive alt text matching page topic.
Internal linking architecture
Hub-and-spoke: homepage links to every service, every service page links back to homepage + to 2-3 relevant sister services, every city/location page links to its 2 most-relevant service pages. Designed before any code is written.
Mobile-first responsive design
Designed at 360px viewport first, scaled up to tablet and desktop. Google indexes the mobile version first (mobile-first indexing), so a non-mobile-friendly site is an SEO handicap.
Open Graph + Twitter Card
Every page has explicit og:image, og:title, og:description, twitter:card, twitter:image. Social shares render with rich preview rather than as a blank link.
sitemap.xml + robots.txt
sitemap.xml auto-generated from the route tree, submitted to Google Search Console at launch. robots.txt explicit per business (some sites need to block /admin/, some block /preview/, etc).
Canonical + hreflang
Self-referential canonical on every page. hreflang blocks for en-GB and x-default where multi-region applies. No duplicate-content ambiguity for Google.
No JavaScript rendering dependency
Critical content (headings, copy, schema) renders server-side. The site works without JavaScript. Crawlers see the same content humans see.
AI-detection-aware copy
Copy is written to pass AI content classifiers (Copyleaks, Originality.ai, GPTZero). AI-flagged content is a real ranking handicap for YMYL sites.
Geo metadata
geo.region, geo.placename, geo.position explicitly set on the LocalBusiness schema and meta tags. Reinforces the geographic signal that local SEO depends on.
What is in the build
5–10 pages, designed around how your customers actually search
A typical local-business site covers the same handful of pages, designed around the questions your customers actually type into Google. The exact page list depends on your trade and service area, but the structure below is what most builds end up with.
Homepage. Clear value proposition above the fold, social proof, primary CTA above and below the fold.
Services pages. One per core service, structured for the search terms customers actually use. With schema.org Service markup on each.
About page. Real story about who runs the business, not a generic "we are passionate" placeholder. With LocalBusiness schema for NAP consistency.
Contact page. Multiple contact methods, working contact form, hours, service area, with map embed and LocalBusiness schema.
Reviews or testimonials page. Formatted so Google can pull them into the SERP. Optional FAQPage schema if you have FAQ-style questions.
Service-area pages for the main towns/cities you cover, essential for local SEO. One per town/city, internal-linked from the homepage.
Blog or content hub (optional). For clients who want a content cadence. Otherwise stripped out to keep the build lean.
Gallery / case studies (optional). For trades where visual proof matters, kitchens, bathrooms, extensions.
FAQ page (optional). For trades with lots of "how much does X cost" / "how long does Y take" type queries. Strong FAQPage schema.
Booking integration (optional). Calendly or Cal.com embed, with conversion tracking set up.
Mobile-first responsive design across every page.
On-page SEO baked in. Titles, meta descriptions, schema markup, internal linking, image optimisation.
PageSpeed 90+ on mobile, 95+ on desktop (verified before launch).
Contact form with spam protection (hCaptcha or Cloudflare Turnstile).
Analytics + Search Console + Google Business Profile integration.
Recorded walkthrough so you know how to maintain the site yourself.
What happens after launch
The build is the foundation. Ongoing work is what compounds.
A hand-coded site is the same kind of asset as a van or a good reputation, it doesn't run itself. The founder-side expectation is honest here: the build is roughly 30% of the work. The remaining 70% is ongoing care. The six ongoing services below run for clients after launch, listed in the order most clients adopt them.
Monthly Core Web Vitals monitoring
Every 7 days I run Lighthouse + PageSpeed + Search Console checks across your homepage and top 5 service pages. Anything that drops below the 90 mobile / 95 desktop threshold gets fixed within the same week.
Care Plan · £50-£150/mo
Quarterly content gap audit
Every 90 days I review what your customers search for that you do not rank for, what competitors rank for that you do not, and what content on your site is decaying. Output is a 5-page brief you can act on with me or anyone.
Core retainer · £449-£499/mo
Quarterly backlink profile review
Every 90 days I check links gained and lost, spammy links that should be disavowed, and the next 8 outreach targets. Disavow actioned within the same week.
Growth retainer · £597-£697/mo
Quarterly internal linking refresh
Every 90 days I review the 15 most important pages on your site and add 3-5 new internal links each based on the latest ranking data. The build ships with a great structure; the quarterly refresh keeps it great.
Core and Growth
Weekly Search Console error monitoring
Every Monday I check Search Console for crawl errors, manual actions, mobile usability, index coverage, structured data errors. Anything new triaged within 24 hours. Critical issues get a phone call.
Every retainer
Index coverage monitoring
Every Monday I confirm every important page is indexed, low-value pages are excluded, the sitemap is current. New pages indexed within days. Removed pages 410d not 404d. Unglamorous, separates sites that rank from ones that do not.
Every retainer
Bundle option
£1,500 build + 6-month ongoing care starter pack - £2,400
The build sets up everything correctly. The first 6 months of care (Core Web Vitals monitoring, content gap audit, backlink review, internal linking refresh, Search Console monitoring, index coverage) is what turns the build into a ranking asset rather than a static brochure. The starter pack covers both at a lower combined rate.
The honest pitch: the bundle is not required. The build ships complete and editable. Some clients take the build and run with it 12-18 months before signing up for care. Others take the bundle from day one. Both paths work, the build stands on its own.
Next step
Three ways to move forward
Fastest
Free 20-minute site audit
I'll personally review your current site and tell you what's broken, what's working, and what the rebuild should focus on. No charge, no obligation, no "book a strategy call with a sales director". Direct to me, founder-direct.
Book the 20-minute audit →For the undecided
Read 3 case studies first
If you want to see what the work actually produces before talking to anyone, the case studies page has the first 2-3 clients with their starting position, what was done, and the result at 90 days. No invented numbers.
See case studies →For the DIY-curious
The Technical SEO Foundation scope
If you have an existing site and the rebuild feels like overkill, the Technical SEO Foundation is the bounded one-off: audit + fixes + handover. £1,500-£3,500, fixed quote, no retainer.
See Technical SEO Foundation →How I build
A clear 5-step process with no surprises
Every build follows the same 5-step process. You know what is happening at every stage, and you see real progress (not just mockups) within the first week. The full process is also published as a HowTo schema in this page's structured data so Google can feature it as a rich result.
- 1
Kickoff call + fixed quote
Goals, target keywords, brand assets, integrations, and what success looks like. I send a short pre-kickoff questionnaire so the call is productive rather than exploratory. Fixed quote delivered at the end of this step. No hourly billing, no scope creep, no surprises. If the scope changes mid-build, the change is quoted separately and you approve before work on it begins.
- 2
Structure, wireframes, and the keyword map
A clear sitemap and a page-by-page outline before any design work. You confirm the structure, the page list, what each page needs to do, and which keywords each page targets. The keyword map is the technical SEO backbone: every page has a primary keyword and 2-3 supporting keywords, all of which fit into the existing search intent for your trade and service area.
- 3
Design + build in the actual framework
Real pages, built on the actual framework you will run in production (Next.js + TypeScript + Tailwind for new builds, or pure HTML/CSS/JS for smaller projects). Not high-fidelity static mockups that look great but ship as something different. You see the live staging URL within the first week, and you can leave feedback directly on the live pages rather than on PDFs.
- 4
Review + revisions, performance and SEO checks
You review on the staging URL. I include one round of substantial revisions per page and unlimited small tweaks. Performance and SEO checks run at this stage: Lighthouse (mobile + desktop), PageSpeed Insights (mobile + desktop), Google Rich Results Test (schema validation), and a manual review of the heading hierarchy, internal linking, and accessibility.
- 5
Launch + handover
DNS cutover, Search Console + Analytics verification, sitemap submission, schema re-validation in production, GBP linking confirmation, and the recorded walkthrough showing you how to maintain the site yourself. Two weeks of post-launch support included: bug fixes, small content tweaks, and help understanding your analytics.
Who this is for, and who it isn't
The honest version
This is for you if
- You are a UK trade, home service, or local professional business (plumber, electrician, roofer, kitchen fitter, solicitor, accountant, dentist, etc).
- Your customers find you through Google search, Google Maps, and word of mouth.
- You want a website that lasts 3-5 years without a rebuild, not one you throw away in 18 months.
- You are willing to invest £1,500-£5,000 upfront because you understand the alternative (£10/mo forever, building nothing) is more expensive over 5 years.
- You are happy to be edited by a developer occasionally, or you want a headless CMS set up so you can edit yourself.
- You want the technical SEO done right at build time, not bolted on later as a separate project.
- You are happy to be told honestly when something is a bad idea - "I would rather lose the project than take your money and produce something mediocre."
This is not for you if
- You want a £99 "website builder" delivered in 24 hours. Wix, Squarespace, or a £30 Fiverr gig fits that brief better than I do.
- You want to edit the design yourself by dragging and dropping. Page builders are the right tool for that workflow.
- You have a £300 budget. The honest answer is that I cannot deliver what I deliver for less than the prices on this page; if your budget is constrained, the Care Plan maintenance tier isn't the right place to start.
- You want a homepage redesign every month. Hand-coded sites are not built for fast design iteration; they are built for clean output.
- You want me to write copy I do not understand. I will write structural copy and SEO-targeted body content for trades I know; for trades I do not know, you supply the copy or I commission a copywriter together.
- You want a marketing site without any technical commitment. Pair the build with a Care Plan if you want ongoing maintenance; otherwise you are on your own after handover.
Pricing
£1,500–£5,000 one-off, fixed quote
The exact figure depends on the number of pages, the complexity of the integrations, and how much copy and photography you can supply versus how much I need to commission. A straightforward 5–7 page site with supplied copy and photos lands at the lower end; a 10-page site with booking, payments, and custom functionality lands higher. Every project gets a fixed quote before work starts. No hourly billing surprises.
| Tier | Pages | Includes | Price |
|---|---|---|---|
| Starter | 5 pages | Homepage, Services, About, Contact, Reviews. All technical SEO. | £1,500 |
| Standard | 7-8 pages | Starter + 2-3 service pages with Service schema. Service-area pages for 3-5 main towns. | £2,000 |
| Advanced | 10+ pages | Standard + 5-10 service pages, 8-15 service-area pages, optional booking/payments integration, FAQ page, gallery. | £3,000-£5,000 |
| Bundle (build + SEO retainer) | any | Build price drops 20% when paired with a 12-month Core or Growth SEO retainer. The trade is real: I am betting the SEO will earn its keep. | -20% off build |
Hosting and the domain are separate ongoing costs (typically £10-30/mo for hosting + £10-15/yr for a .co.uk domain). The Care Plan bundle covers both plus security updates and content edits, see Care Plans for pricing.
Common questions
Web design, honestly answered
A typical 5–10 page site takes 3–6 weeks from kickoff to launch, depending on how quickly you can supply copy, photos, and brand assets. A faster turnaround is possible for simpler sites; a longer one is realistic if you need e-commerce, booking integrations, or complex custom functionality. I give you a fixed timeline before work starts and stick to it.
Hand-coded means every line of HTML, CSS and JavaScript is written specifically for your business. WordPress sites are built from a theme plus a page builder plus 20+ plugins, none of which were designed to work together. The end user sees the same webpage, but the underlying code is fundamentally different, a hand-coded site is typically 5-10x smaller in file size, scores in the green on Core Web Vitals out of the box, and doesn't break every time a plugin updates. The trade-off is that custom changes take a developer rather than a drag-and-drop interface.
No. Page-builder sites look fine in screenshots and produce bloated, slow, SEO-unfriendly HTML in practice. They are built for the convenience of the person making the site, not for the customer visiting it. Every site I build is hand-coded (Next.js + TypeScript + Tailwind, or pure HTML/CSS/JS for smaller projects) so it is fast, structured for search, and easy to maintain.
Because a Wix site is not a website. It is a template you rent, on a domain you don't own, on infrastructure you can't move. A hand-coded Next.js site is an asset you own outright: the code, the design, the content, the data, all yours. The £1,500+ is the price of an asset that compounds in value over years. The £10/mo is the price of renting something you'll have to rebuild in three years. The total cost of ownership over five years is usually cheaper for the hand-coded site, and the search ranking is decisively better.
It is mobile-first by default. Designed for phones first, then scaled up for tablet and desktop. Most local search traffic is mobile; a site that doesn't work well on a phone is actively losing you business. Google also indexes the mobile version of your site first (mobile-first indexing), so a non-mobile-friendly site is an SEO handicap.
Yes. Either through a headless CMS (Sanity, Contentful, or Payload), or via a short recorded walkthrough showing you how to make the edits you will actually need. I do not build sites that lock you into paying me for every minor content change. The editing interface is a normal web form, not 'ask your developer'.
Everything you need to launch and rank: design, build, on-page SEO (titles, meta descriptions, schema markup, internal linking, image optimisation), speed optimisation (PageSpeed 90+ on mobile, 95+ on desktop, verified before launch), a contact form, basic analytics setup, schema.org structured data across every page type, Open Graph + Twitter Card metadata, sitemap.xml and robots.txt tuned for your business, GBP and social linking wired up, and a recorded walkthrough so you know how to maintain the site yourself. Hosting and the domain are separate ongoing costs (covered by the Care Plan if you want them bundled).
Only for small product catalogues (under ~30 products) where Shopify is the right tool. For larger catalogues, multi-warehouse fulfilment, or anything custom, I would recommend a different partner. I would rather tell you that than take your money and produce something mediocre.
Two weeks of post-launch support included: bug fixes, small content tweaks, and help understanding your analytics. After that you can either take it on yourself, switch to a Care Plan for hosting + ongoing maintenance, or pair it with an SEO retainer if you want the build to actually rank. The hand-off is yours; you are never locked in.
Yes. About half of my builds are replacements for existing WordPress or Wix sites that have stopped performing. The Technical SEO Foundation one-off is the natural precursor: I audit your current site, fix the underlying technical debt (broken redirects, missing schema, slow pages, weak internal linking), and the rebuild then ships into a clean technical base. Pair them together and the new site launches into a Google-friendly foundation rather than inheriting the old site's problems.
Case studies live at /case-studies once the first client results are in. The first 2-3 clients get a discounted fee in exchange for a real, documented case study with their trade, their service area, their starting position, what was done in 90 days, and the result. Those case studies only get published here once the work is genuinely done, not before. In the meantime, the technical SEO work on this very site (jdwa.co.uk) is the example, every page here is built to the same standard as a client build.
Related content
Where to go from here
Web design by trade
Web design by city
Pairs well with
Bounded project
Technical SEO Foundation →
If you have an existing site that needs the technical debt fixed before ongoing work compounds. The natural precursor to a rebuild, or the standalone service for a site you want to keep.
Ongoing retainer
Local SEO retainer →
The monthly content + GBP + reviews + backlinks stack. The build is the foundation; this is the work that makes it rank over 6-12 months.
Maintenance
Care Plan →
Hosting + security updates + content edits + monthly health check. Recommended for every build unless you have an in-house team to maintain it.
Worth reading
Local SEO
What actually moves local-pack rankings →
The 5 factors that meaningfully shift Google Maps rankings, ranked by impact. Not the 50 factors, the 5 that matter.
Content
AI-drafted vs AI-published →
Why I publish AI-assisted content with my fingerprints on it, not pure AI output. The line I will not cross, and the line that is fine.
GBP
GMB suspension: how to fix it →
If your Google Business Profile is suspended, this is the diagnostic-to-reinstatement workflow. Most fixes take 5-10 working days if you move fast.
Want to talk through what your next site needs to do?
Send your details over and I will personally take a look at your current site and what the rebuild should focus on. No charge for the audit. No obligation to proceed.