← Writing

The seven checks I run before quoting a website

Somebody asks what a new website will cost. The honest answer is that I don't know yet, and neither does anyone who gives you a number in the first five minutes. Before I quote, I spend about half an hour with the site you already have, because most of what makes a project cheap or expensive is already sitting there. Here are the seven things I look at, in the order I look at them, and what each one tells me.

1. Does the name point where you think it does

First thing: what does the domain actually resolve to, and is anything alive at the other end. I have opened sites whose DNS pointed at a server that had been decommissioned a year earlier. The site loaded, because a cached copy was being served from somewhere nobody could name, and the business had no idea.

This also tells me who controls DNS, which matters more than the site. If the records live at a registrar nobody has the login for, that's the first line item in the quote and it isn't design work.

2. The certificate, and what happens without www

Is TLS valid, does it cover both the bare domain and www, when does it expire, and does it renew on its own or did someone install it by hand two years ago. Then I try all four front doors: http and https, with and without www. All four should end at one canonical URL with a permanent redirect.

Sites that resolve on two hostnames without redirecting are running two copies of themselves as far as search engines are concerned. That's a config fix, not a rebuild, and I'd rather find it now than have it show up as a mystery later.

3. Whether the site is allowed to be indexed

I read robots.txt and the sitemap directly. Not a score out of a hundred from some tool, the actual files.

I have found live, paid-for, actively marketed sites serving Disallow: /, which tells every search engine to stay out entirely. Usually it's left over from a staging environment that got promoted to production and nobody re-checked. The business, meanwhile, was wondering why nothing ranked. If that's the situation, the answer to what should we spend on SEO is nothing yet, fix the one line first.

Then I crawl the sitemap and check every URL in it actually returns a page. A sitemap full of dead links is a sitemap that's actively working against you.

4. What's actually running

Platform, version, and how many third-party pieces are bolted on. A site is a maintenance object, and the number I care about is how many separate codebases have to keep being updated for it to stay safe.

This is where quotes swing hardest. A clean, boring site with a handful of dependencies is cheap to take over. A site running an end-of-life runtime because one component won't run on the supported version is not a website project, it's a migration, and pretending otherwise is how people end up angry six weeks in.

5. Mail, which is not the website but always becomes my problem

I check SPF, DKIM and DMARC before I quote, because if you host mail with the same company that hosts the site, then moving the site will break your mail unless somebody is paying attention. That somebody is going to be me.

The common finding is an SPF record with more lookups than the spec allows, or three of them stacked up from three different vendors over the years, which is invalid and silently degrades your deliverability. If your invoices land in spam, this is usually why, and it's a twenty-minute fix once you know.

6. The three things that decide whether it feels fast

Server response time, what blocks the first paint, and how much JavaScript the phone has to run. That's it. Not the thirty-item checklist. I measure those three on a phone-shaped connection, because that's what your customers are on.

The reason this belongs in a quote and not in a later optimization phase is that all three are decided by how the site is built. You can't bolt speed on afterwards, which is exactly what a caching plugin is trying and failing to do.

7. Who holds the keys, and when was the last restore

Registrar, DNS, host, mail, analytics, and the site's own admin. I want to know which of those you can log into today, personally, without asking a previous developer for a favor.

Then the question almost nobody can answer: when did someone last take a backup and actually restore it somewhere to confirm it works. A backup you have never restored is a file you hope is a backup. If the answer is that there isn't one, that goes in the quote too, near the top.

What to do

You can run most of this yourself in an afternoon. Load your site with and without www, read your own robots.txt, find out who your registrar is, and try to remember the last time anyone restored a backup. If four of the seven come back uncomfortable, you don't have a design problem, you have a maintenance problem, and no amount of new homepage is going to fix it.

If you'd rather I did it, that's what the half hour before a quote is for, and I'll tell you plainly if the answer is that your current site is fine and you should keep it.


Need this kind of thinking applied to your own setup? Get in touch →