302 vs 303: Found vs See Other
302 and 303 can look similar in logs, but they tell clients, crawlers, and API consumers different things.
| Aspect | 302 | 303 |
|---|---|---|
| Meaning | Found describes how the server processed the request and what the client should do next. | See Other describes how the server processed the request and what the client should do next. |
| Typical use case | HTTP 302 Found indicates a redirection response outcome. | HTTP 303 See Other indicates a redirection response outcome. |
| Caching/client behavior | Check cache headers and downstream behavior for 302. | Check cache headers and downstream behavior for 303. |
| SEO implications | Search crawlers interpret 302 according to redirect-codes semantics. | Search crawlers interpret 303 according to redirect-codes semantics. |
| API/backend impact | API clients may branch logic specifically on 302. | API clients may branch logic specifically on 303. |
When to use one vs the other
Use 302 when the response should communicate found behavior; use 303 when see other is the accurate protocol signal.
A frequent mistake is swapping 302 and 303 for convenience; that causes client retry bugs, incorrect cache signals, and misleading monitoring data.
Decision summary: if user agents should receive the Found signal, return 302; if they should receive See Other, return 303.
FAQ
What is the biggest difference between 302 and 303?
302 communicates Found, while 303 communicates See Other. Choosing the right one keeps clients and intermediaries predictable.
Do 302 and 303 have SEO or caching impact?
Yes. Search engines and caches interpret status classes differently. Use each code according to its semantics to avoid accidental indexing, stale responses, or crawl inefficiency.
Can APIs safely return 302 instead of 303?
Only when it matches contract semantics. API clients often branch logic by exact code, so swapping them can break retries, auth handling, or user-facing errors.
Related guides: 302 Found ยท 303 See Other