CIMLAS
01ABOUT02SERVICES03PORTFOLIO04PROCESS05FAQ06BLOG
CIMLAS BESPOKE SOLUTIONS LLCCONTACT
The Transmission
"A faded '307' next to a glowing orange '308' on a dark background, representing the difference between temporary and permanent HTTP redirects."
Behind the BuildApril 29, 20265 min read

The Single Digit That Was Hiding My Homepage From Google

A Search Console warning sent me chasing a redirect bug on my own site. The fix wasn't deleting anything — it was changing one number from a 7 to an 8. Here's what I learned.

R

Raymond

I got an email from Google Search Console this week with the subject line: "New reasons prevent pages from being indexed." I almost ignored it. Most of these emails are noise — Google flagging URLs that should be excluded, or quirks that don't affect anything anyone cares about.

But I clicked through anyway. Good thing I did, because the affected page was my homepage.

"Page With Redirect" — One Page, And It's The Important One

The flagged URL: https://cimlasbespoke.com/. The reason: Page with redirect. The status: not indexed.

A redirect on the homepage isn't unusual — most sites quietly redirect either the apex (the bare domain) to www, or vice versa. That's normal canonicalization. What isn't normal is Google refusing to index the destination because of how the redirect is configured.

I needed to see exactly what was happening, so I ran this in PowerShell:

bash

curl.exe -sIL https://cimlasbespoke.com/ | Select-String -Pattern "HTTP|Location"

(Filename: PowerShell, Language: bash)

The output:

bash

HTTP/1.1 307 Temporary Redirect Location: https://www.cimlasbespoke.com/ HTTP/1.1 200 OK

(Filename: terminal output, Language: bash)

There it was. My apex domain was redirecting to www — fine. But it was doing it with an HTTP 307, not a 308.

The Difference Between 307 And 308

This is the part where I have to admit I hadn't thought carefully about HTTP redirect status codes in years. They all just worked. But there's a real difference, and it matters.

307 Temporary Redirect tells the browser (and search engines): "this URL is moving right now, but it might come back. Don't fully commit to the destination."

308 Permanent Redirect says: "this URL is gone for good. Treat the destination as the canonical version forever."

For a search engine, that distinction is everything. A 307 makes Google hesitant to transfer the indexing authority of cimlasbespoke.com/ over to www.cimlasbespoke.com/. So neither URL gets fully indexed — the apex is "redirecting" and the www destination is in canonical limbo.

One character of difference. Months of half-broken indexing if you don't catch it.

The Fix Took 30 Seconds

The redirect was being served by Vercel automatically based on my domain settings. I'd set www.cimlasbespoke.com as the primary domain and let Vercel handle the apex redirect — which it does by default with a 307.

Vercel → Settings → Domains → Edit on the apex row → status code dropdown → change 307 Temporary Redirect to 308 Permanent Redirect → Save.

Then I re-ran the curl:

bash

HTTP/1.1 308 Permanent Redirect Location: https://www.cimlasbespoke.com/ HTTP/1.1 200 OK

(Filename: terminal output, Language: bash)

Done. Back in Search Console, I clicked Validate Fix on the warning. Google now has it queued for re-crawl, and within a week it should be marked as resolved.

What I'm Taking Away

Three things I want to remember from this:

The first is that Search Console emails are worth opening. I almost didn't. The reason I almost didn't is the same reason most developers don't — they look like noise. But Google has actual signal buried in there, and the cost of ignoring a real bug for weeks is much higher than the cost of spending two minutes investigating a non-issue.

The second is that HTTP status codes carry meaning that platforms hide from you. Vercel's default of 307 isn't wrong, exactly — for some use cases (A/B tests, feature flags) you genuinely want a temporary redirect. But for a domain canonicalization that's intended to be permanent forever, 308 is the right answer. The platform won't make that decision for you.

The third — and this one's the most useful as a habit — is that curl -sIL is the fastest diagnostic tool in your kit for any redirect or routing question. It shows you the entire chain, every status code, every destination. If you're ever staring at a routing problem and don't know where to start, that command is where you start.

If you want to check your own site right now, replace the URL and run it. You might be surprised what you find.

TAGS

#seo#vercel#nextjs#google#search-console#redirects#debugging#build-in-public#web design#cimlas bespoke
← Back to The Transmission