Web development and design
Websites built by the person who has to make them rank afterwards.
Most sites are designed first and handed to an SEO later, once the structure is already set and every useful change has become expensive. Here the development and the technical SEO are the same job done by the same person, so those decisions get made while they are still cheap. Bespoke code, not a page builder, on WordPress, Shopify or a static build, chosen on what you need to maintain afterwards.
The difference
Design decisions are SEO decisions.
Not a slogan. These are the specific choices that get made during a build and are painful to reverse afterwards.
URL structure
Decided in week one, expensive to change in year two because by then every change needs a redirect and every redirect leaks a little equity. Getting this right at the start costs nothing.
Template hierarchy
Which templates exist, what each one outputs, and whether an archive can ever rank. Retrofitting a template that was never meant to be a landing page is most of the work in a typical SEO project.
Internal linking
Built into the templates from the start, not bolted on later as a 25 link block in the footer. We cut exactly that block down to five chosen links on one site, which is work that should never have been needed.
Rendering
Whether your content exists for a crawler that does not wait around. We server render by default, including interactive features. A geolocation search tool we built stays fully crawlable for that reason.
Schema
An entity graph designed once, properly, with @id relationships that resolve instead of colliding. Cheaper than untangling a graph that three plugins have been fighting over for four years.
Performance
A custom theme outputs the markup the page needs and nothing else. That is why it is fast. It is not fast because six optimisation plugins are holding it together.
What gets built
What a build includes.
Any category, built from a clean start, never a bought template: brochure sites, ecommerce, directories, listing and booking platforms, membership sites, tools and full applications, in mainstream and restricted sectors alike. Custom themes and, where the site needs it, a bespoke application underneath. The list below is what every build carries regardless of what it is.
Always
- Hand written custom theme, no page builder
- Mobile first and accessible, tested on real viewports
- One schema graph, modern images, caching that clears
- A written handover, so you are never stuck
Where it varies
- Design and copy by us, or built around yours
- Tools and calculators built from scratch when plugins fall short
- WooCommerce yes, Shopify to a point
- Migrations scoped as their own piece of work
Recently built
A selection, measured on the live sites.
A selection from the portfolio. Every figure below was taken from the running site, not from a case study written afterwards. Two are linked so you can check them yourself. The rest are in sectors where clients prefer not to be listed publicly, so those are described without naming them and we will introduce you on request. Several are recent, and a new site takes months to rank, so treat this as proof of how they are built, not of what they have earned yet.
The site you are on
This one, and you can check every number yourself
- Three requests and 32KB for the whole homepage
- Static, no CMS, not one third party host
- Largest contentful paint 289ms, layout shift 0.00
- Lighthouse SEO and accessibility both score 100
Everything above is measured on this page
Flagship, DR 64
The site we own end to end
- 980 images on the landing view, all with alt text
- Paints in 260ms with no third party requests
- Custom Sage theme, with Redis, OPcache and Cloudflare
- Source of the brute force and cache case studies
Editorial guide site
Lamplit London
- Guides to London after dark, with saved lists
- Sponsored link compliance through
rel="sponsored" - First paint 636ms from 15 requests
lamplitlondon.com
Content site at scale
London Guide UK
- 309 guides across 386 venues and 72 neighbourhoods
- Taxonomy and linking built so no page goes thin
- 784ms to first paint on custom templates
londonguideuk.co.uk
Listings directory
A large lifestyle listings directory
- All 67 landing images lazy loaded, with alt text
- CollectionPage and BreadcrumbList in one graph
- Canonicals that resolve across filtered views
Community platform
A community and listings platform
- HTML served from cache at the edge
- Server answers in 11ms
- 214KB page, a fraction of most directories
Image heavy gallery
A gallery carrying a hundred images
- 102 images, and still paints in 656ms
ItemListschema marks it as a collection- Responsive variants on 99 of 102
Custom build, no CMS
An agency site built without WordPress
- Assets on dedicated CDN and media subdomains
- Images and site scale without slowing each other
- All 25 images carry alt text
Image heavy, no CMS
Two hundred images, half a second
- 244 images, every one carrying alt text
- All but three lazy loaded
- 496ms to first paint, with no CMS
Most recent build
The newest one, and the cleanest set of numbers so far
- 53 of 62 images served as AVIF or WebP
- 308ms first paint, 53ms server response
- Six node schema graph, consolidated from the start
Evidence
What we have built inside those sites.
The bespoke parts, not the homepages. Our documented work is build and technical, not brand identity.
Bespoke tool
A location search that maintains itself
- Built for a term with 33k searches a month
- Geolocation, distance sorting and radius filtering
- New locations need no code change
- Server rendered, so fully crawlable
Bespoke tool
A three way comparison feature
Real relationship data derived from post meta and made bidirectional, with SVG connector graphics, location aware combined pricing, localStorage persistence and undo and redo. DOM safe rendering throughout, which matters when you are injecting user selected content.
Theme
A custom Sage theme, owned end to end
Full technical ownership of a DR 64 site. Custom theme, the caching architecture, structured data, edge security and the SEO. Around 151 hours logged and documented, so the next developer can pick it up.
Infrastructure
Caching that clears when it should
- Part of the build, not a plugin switched on
- One site ran up to a day stale
- Four separate causes behind it, all at once
Ecommerce web design
A shop is a different build, and it is mostly the bits nobody photographs.
Ecommerce web design gets sold on how the homepage looks. What decides whether it earns is the category template, the checkout, and how the site behaves once there are four thousand products in it, not the twelve in the demo.
The category page is the shop
- Where most store search traffic arrives
- Room for real content and sensible sorting
- Filters that spawn no crawlable URL permutations
Designed at full catalogue size
A layout that looks composed with nine products often falls apart at nine hundred, and long product names, missing images and out of stock states are where it usually breaks. We design against the real catalogue, never a tidy sample of it.
Checkout measured on a real phone
- Every extra step or field loses buyers
- Tested on a mid range handset over mobile data
- Finds losses a desktop mockup never shows
Product schema that is true
Price, availability and reviews marked up accurately and kept in step with the actual stock position. Markup that says in stock when it is not will eventually cost you the rich result altogether.
Images that do not sink it
Product photography is the single heaviest thing on a store. Correct formats, real dimensions, lazy loading below the fold and a pipeline that keeps working when your team uploads a 4MB photograph in two years' time.
Platform chosen on your constraints
WooCommerce, Shopify or something bespoke, decided by catalogue size, how odd your rules are and who maintains it after launch. Not decided by which one we prefer building.
Shopify development, as opposed to Shopify SEO
Worth separating, because they get sold as one thing and are not. Shopify development is theme work: Liquid templates, sections and blocks a client can use, metafields modelled properly instead of stuffed into a description, and removing the four apps doing what twenty lines of Liquid would do faster. A store carrying eleven apps is usually carrying eleven render blocking scripts, and that is a build problem, not a search one.
Where it stops is the platform boundary, and we would rather name it than discover it with you: checkout is largely locked unless you are on Plus, some URL structures cannot be changed at all, and no amount of development gets around either. Fixing rankings on a store that already exists is a different job, covered on Shopify SEO.
If you already have a store
Then a redesign is a migration, and it is the single most reliable way to lose rankings you already paid for. URLs, redirects, canonicals and structured data have to move with the design, not after it. That is covered on website redesign and SEO migration, and it is worth reading before you commission anything.
How a build runs
Four stages, and you approve the scope first.
What it needs to do
Before anything visual. What the site is for, who has to use it, what has to rank, and what the content is. Most bad builds are bad because this part got skipped.
Free first callStructure
URL structure, templates, post types and the internal linking plan. This is the part that decides whether the site can rank, and it happens before a single pixel is placed.
Agreed in writingBuild
Custom theme, templates, any bespoke features, schema, caching and the image pipeline. On staging, with indexing blocked, which sounds obvious and is skipped constantly.
Logged as it is spentLaunch and hand over
Redirects if there was an old site, a parity check, then monitoring for the first weeks. Plus written documentation of how it all works, so you are not dependent on us.
Rollback path readyCost
What it costs.
Development runs at £90 to £100 an hour, or £95 blended where the build and the SEO are the same work. Projects are quoted as a fixed scope after we have seen what you need.
Small site
Quoted
A handful of pages on a clean custom theme. If a good template would do the job we will tell you, because paying developer rates for that is a waste.
Custom build
Scoped
Custom post types, bespoke templates, real content architecture, schema and caching. The common case, and where having the build and the SEO on one team pays for itself.
Build plus tooling
Scoped
Where the site needs something no plugin does properly. A search feature, a comparison tool, a calculator. Built from scratch, server rendered and crawlable.
Fixed scope and cost agreed in writing before work starts, so the number does not move once it is underway. Time is logged as it is spent and the ledger is open to you. Full breakdown on the rates page.
FAQ
Questions before you enquire
Are you designers or developers?
Developers, and you should know that before you enquire. We build custom themes from scratch, write the PHP and CSS, and we care a great deal about typography, spacing, accessibility and how a page behaves on a slow phone. What we do not do is brand identity, logo work or a visual concept phase with mood boards.
In practice that means one of three things. You bring a designer and we build what they draw. You bring existing brand assets and we design the pages around them. Or you want something clean, fast and structural, not art directed, which is most business sites, and we do that directly.
If what you want is a striking brand led visual identity, hire a designer for that part. We will happily build it afterwards.
Do you use page builders like Elementor or Divi?
Not by choice. They are fine for getting something live quickly, and if you already have one we will work with it instead of insisting on a rebuild. But they add a lot of weight, they generate markup you do not control, and they make Core Web Vitals harder than it needs to be.
Given the choice we build a custom theme. You get markup that is exactly what the page needs and nothing else, which is why the sites we build tend to be fast without a stack of optimisation plugins holding them together.
How much does a website cost?
It is quoted per project after we have seen what you need, because the real range is too wide to be useful. A handful of pages on a clean custom theme is a very different job from a site with custom post types, a bespoke tool and a migration.
The underlying rate is £90 to £100 an hour for development, or £95 blended when the work mixes build and SEO. We give you a fixed scope and cost in writing before anything starts, so the number does not move once work begins. Full detail on the rates page.
Will the site be built so it can rank?
Yes, and this is the main reason to have one team do both. Most sites are designed first and handed to an SEO afterwards, at which point the structure is already fixed and the advice becomes a list of things that are expensive to change.
Building it ourselves means the URL structure, template hierarchy, internal linking, heading structure and schema are decided while they are still cheap to decide. That is not an upsell, it is just the order the work should happen in.
Do you do ongoing support after launch?
Yes, and we would rather you took it than not, because a site nobody maintains slowly falls apart. Tested updates, security, monitoring and small changes. Detail on the maintenance page.
It is not compulsory. Everything we build is documented, so another developer can pick it up without needing us.
When should I not hire you for this?
If you need a five page brochure site as cheaply as possible, a template and a competent generalist will serve you better and cost a lot less. Paying developer rates for something a theme already does is a poor use of money.
If you need it in a fortnight and it is complicated, we are probably not free at that notice, and rushing a build is how you end up paying for it twice.
Keep reading
Related
Book me
Tell us what the site needs to do.
Not what it should look like, that comes later. What it is for, who uses it and what has to rank. That is enough for us to tell you roughly what it takes.