HTTP 303 See Other
Redirection code, RFC 9110, section 15.4.4
What it means
The result of your request is at another address, and you should fetch it with a GET. It is the standard answer after a form is submitted.
A real response
This is the request and the answer our test server gave when we asked it to return 303.
GET /c/303 HTTP/1.1
Host: example.com
HTTP/1.1 303 See Other
Date: Sat, 14 Nov 2026 10:00:00 GMT
Content-Type: text/html; charset=utf-8
Location: /new-page
Content-Length: 11
<p>demo</p>What browsers do with a POST
We sent a POST with the body hello to a test server that answered 303 and then reported what arrived at the new address. Chrome 157 sent GET and dropped the body. WebKit sent GET and dropped the body.
If you run the site
Use 303 after a POST that changes data, to send the browser to a result page. Reloading that page then repeats the safe GET and not the POST, so a refresh cannot place the order twice (the "post/redirect/get" pattern).
If you are a visitor
Nothing to fix. It is why refreshing a "thank you" page does not resend your form.
A common mistake
Answering a form POST with the result page directly: a refresh then asks the browser to resend the form.
Registered in the IANA HTTP Status Code Registry as See Other, defined in RFC 9110, section 15.4.4.
This is an independent guide. It is not connected with the IETF, IANA, any browser maker or any company named here. Meanings were checked against the RFC texts on 14 November 2026. Responses shown were recorded on 14 November 2026 from a small test server on the author's own computer.