Published

301 vs 302 redirect

One is permanent and one is temporary, and every explanation goes on to say that a 301 passes link equity while a 302 does not.

Google’s own documentation on redirects uses neither of those phrases. Not “link equity”, not “PageRank”. What it uses instead is a different idea with a different consequence, and the consequence is the useful part.

The difference, in Google’s words

Two sentences, and they are about which address appears in the results rather than about anything flowing anywhere:

Permanent redirects: Show the new redirect target in search results.

Temporary redirects: Show the source page in search results.

That is the whole practical difference and it is easier to act on than the usual framing. You are not choosing how much of something to pass along. You are choosing which URL you want people to land on from search.

It is a canonical signal, not a transfer

Google Search uses certain types of redirects as a signal that the redirect target should be canonical.

A redirect is one of the inputs to the same decision a canonical tag feeds into: which of several addresses is the one. That is why a redirect and a canonical pointing different ways is a real problem, and why “does it pass equity” is the wrong question to be asking about it.

And the part nobody in the field mentions, about temporary redirects:

the indexing pipeline doesn’t use the redirect as a signal that the redirect target should be canonical. The target page might still be indexed if other canonicalization signals are present.

So a 302 is not a guarantee that the old URL keeps its place. It withholds one signal; it does not overrule the others. If everything else on your site points at the target anyway, the target can end up being shown regardless of the code you chose.

It is not really 301 against 302

The question names two codes and there are five, in two groups. Picking 307 because it sounded modern, or 308 because it sounded like a better 301, lands you in whichever group it belongs to:

Permanent

301, 308

Google treats the target as the one to show, and uses the redirect as a canonical signal.

Also: a meta refresh of 0 seconds, an HTTP refresh of 0 seconds.

Temporary

302, 303, 307

Google keeps showing the source, and does not use the redirect as a canonical signal.

Also: a meta refresh of more than 0 seconds.

Choose on the only question that decides it: will the old address come back? If it will, temporary. If it will not, permanent. Everything else follows from that, and it is what nobody but you can know.

What this product records about it

ShownTrue’s crawler follows redirects itself rather than handing that to a library, recognises the same five status codes Google groups, and records the address a page was finally served from alongside the one it was asked for. A page that redirects is recorded as having redirected rather than quietly counted as the page it landed on.

That matters for the reason this page is about: the address you asked for and the address you got are different facts, and a crawl that keeps only the second cannot tell you a redirect happened at all.

The crawler works and has run against this site over the real internet. No customer has run one, so there are no figures here about anybody’s site. The capability pages state exactly what exists and what does not.