The XMLHttpRequest.statusText property returns a DOMString containing the response's status message as returned by the HTTP server. Unlike XMLHTTPRequest.status which indicates a numerical status code, this property contains the text of the response status, such as "OK" or "Not Found". If the request's readyState is in UNSENT or OPENED state, the value of statusText will be an empty string.

If the server response doesn't explicitly specify a status text, statusText will assume the default value "OK".


var xhr = new XMLHttpRequest();
console.log('0 UNSENT', xhr.statusText);

xhr.open('GET', '/server', true);
console.log('1 OPENED', xhr.statusText);

xhr.onprogress = function () {
  console.log('3 LOADING', xhr.statusText);

xhr.onload = function () {
  console.log('4 DONE', xhr.statusText);


 * Outputs the following:
 * 4 DONE OK


Specification Status Comment
XMLHttpRequest Living Standard WHATWG living standard

Browser compatibility

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support 1 (Yes) 1.0 (1.7 or earlier)[1] 7[1] (Yes) 1.2
Feature Android Chrome for Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? 1.0 (Yes) (Yes) ? ? ?

[1] Internet Explorer versions 5 and 6 lacked the XMLHttpRequest object, but provided a way to make AJAX requests using ActiveXObject.

See also

Document Tags and Contributors

 Contributors to this page: erikadoyle, jsx, maybe
 Last updated by: erikadoyle,