Network request list

The request list of the Network Monitor shows a list of all the network requests made in the course of loading the page.

Network request list

By default, the Network Monitor shows a list of all the network requests made in the course of loading the page. Each request is displayed in its own row:

By default, the Network Monitor is cleared each time you navigate to a new page or reload the current page. You can override this behavior by checking "Enable persistent logs" in the Settings.

Network request columns

You can toggle columns on and off by right-clicking on the table header and choosing the specific column from the context menu. A Reset Columns command is available on the context menu to reset the columns to their initial configuration.

You can also change the width of the columns to help make the information you are looking for easier to view. The Reset Columns command on the context menu also resets the width of the columns to the default values.

Clicking the column header label sorts the request list by that column. You can reset the sort to the default by selecting "Reset Sorting" from the context menu.

Here is a list of all available columns:

  • Status: The HTTP status code returned. This is displayed as a color-coded icon:
    • blue circle for informational (1XX codes). Notably, this includes 101 (switching protocols) for WebSocket upgrades.
    • green circle for success (2XX codes)
    • orange triangle for redirection (3XX)
    • red square for errors (4XX and 5XX)
    • hollow grey circle for responses that were fetched from the browser cache.
    The exact code is displayed immediately after the icon.
  • Method: The HTTP request method used.
  • File: The basename of the file requested.
  • Protocol: The network protocol used to transfer the data, this column is hidden by default. This is new in Firefox 55.
  • Scheme: The scheme (https/http/ftp/...) of the path requested. This column is hidden by default. This is new in Firefox 55.
  • Domain: Domain of the path requested.
    • If the request used SSL/TLS and the connection had security weaknesses such as weak ciphers, you'll see a warning triangle next to the domain. You will be able to see more details about the problem in the Security tab.
    • Hover over the domain to see the IP address.
    • There's an icon next to the domain that gives you extra information about the security status of that request. See Security icons.
  • Remote IP: The IP address of the server answering the request. This column is hidden by default. This is new in Firefox 55.
  • Cause: The reason that the network request occurred, for example XHR request, <img>, script, script requesting an image, etc. This is new in Firefox 49.
  • Type: Content-type of the response.
  • Cookies: The number of request cookies associated to the request. This column is hidden by default. This is new in Firefox 55.
  • Set-Cookies: The number of response cookies associated to the request. This column is hidden by default. This is new in Firefox 55.
  • Transferred: The number of bytes that were actually transferred to load the resource. This will be less than Size if the resource was compressed. From Firefox 47, if the resource was fetched from a service worker cache, then this cell displays "service worker".
  • Size: The size of the transferred resource.

Image thumbnails

If the request is for an Image, hovering over its filename shows a preview of the image in a tooltip:

Security icons

The Network Monitor displays an icon in the Domain column:

This gives you extra information about the security status of the request:

Icon Meaning
HTTPS
Weak HTTPS (for example, a weak cipher was used)
Failed HTTPS (for example, a certificate was invalid)
HTTP
Localhost
Indicates that the URL belongs to a known tracker that would be blocked with content blocking enabled.

For weak and failed HTTPS requests, you'll see more details of the problem in the Security tab.

Cause column

The Cause column indicates what the cause of the request was. This is usually fairly obvious, and you can generally see the correlation between this and the Type column entry. The most common values are:

  • document: The source HTML document.
  • img: <img> element.
  • imageset: <img> element.
  • script: A JavaScript file.
  • stylesheet: A CSS file.

Timeline

The request list also displays a timeline for the different parts of each request.

Each timeline is given a horizontal position in its row relative to the other network requests, so you can see the total time taken to load the page. For more details on the color-coding used here, see the section on the Timings page.

Starting in Firefox 45, the timeline also contains two vertical lines:

  • The blue line marks the point at which the page's DOMContentLoaded event is triggered.
  • The red line marks the point at which the page's load event is triggered.

Filtering requests

You can filter requests by content type, by whether they are XMLHttpRequests or WebSocket requests, by URL, or by request properties.

Block a specific URL

If you want to view your page as it would look without a resource, you can block a specific URL from the Request List.

  1. Hover over the item you want to block in the Request List
  2. Select Block URL from the context menu
  3. When you refresh the page, that specific URL will be blocked and a message will be added to the item in the list indicating that it has been blocked by the DevTools.

To stop blocking the url:

  1. Hover over the item
  2. Select Unblock URL
  3. Now when you refresh the page, the item will once enabled.

Filtering by content type

To filter by content type, use the buttons in the toolbar.

Filtering XHR

To see only XHR requests, use the "XHR" button in the toolbar.

Filtering WebSockets

To see only WebSocket connections, use the "WS" button in the toolbar.

The third-party add-on WebSocket Sniffer may be helpful as well.

Filtering by URL

To filter by URL, use the search box in the toolbar. Click in the search box, or press Ctrl + F (or Cmd + F on a Mac), and start typing. The list of network requests will be filtered to include only requests that contain your filter string, in either the Domain or the File portions.

You can filter requests that don't contain your filter string by prefixing your query with the "-" operator. For example, the query "-google.com" will show all requests that don't have "google.com" in their URL.

Filtering by properties

To filter by specific request properties, use the search box in the toolbar. The search box recognizes specific keywords, which can be used to filter the requests by specific request properties. Those keywords are followed by a colon and a related filter value. The filter values are matched case insensitive. Prepending a minus (-) negates the filter. You can combine different filters together by seperating them with a space.

Keyword Meaning Examples
status-code Shows resources that have the specific HTTP status code. status-code:304
method Shows resources that have were requested via the specific HTTP request method. method:post
domain Shows resources coming from a specifc domain. domain:mozilla.org
remote-ip Shows resources coming from a server with the specified IP. remote-ip:63.245.215.53
remote-ip:[2400:cb00:2048:1::6810:2802]
cause Shows resources matching a specific cause type. The types can be found in the description of the cause column. cause:js
cause:stylesheet
cause:img
transferred Shows resources having a specific transferred size or a transferred size close to the one specified.  k can be used as suffix for kilobytes and m for megabytes, e.g. the value 1k is equivalent to 1024. transferred:1k
size Shows resources having a specific size (after decompression) or a size close to the one specified. k can be used as suffix for kilobytes and m for megabytes, e.g. the value 1k is equivalent to 1024. size:2m
larger-than Shows resources that are larger than the specified size in bytes. k can be used as suffix for kilobytes and m for megabytes, e.g. the value 1k is equivalent to 1024. larger-than:2000
-larger-than:4k
mime-type Shows resources that match the specified MIME type. mime-type:text/html
mime-type:image/png
mime-type:application/javascript
is is:cached and is:from-cache shows only resources coming from cache.
is:running shows only resources, which are currently being transferred.
is:cached
-is:running
scheme Shows resources transferred via the given scheme. scheme:http
has-response-header Shows resources that contain the specified HTTP response header. has-response-header:cache-control
has-response-header:X-Firefox-Spdy
set-cookie-domain Shows the resources that have a Set-Cookie header with a Domain attribute that matches the specified value. set-cookie-domain:.mozilla.org
set-cookie-name Shows the resources that have a Set-Cookie header with a name that matches the specified value. set-cookie-name:_ga
set-cookie-value Shows the resources that have a Set-Cookie header with a value that matches the specified value. set-cookie-value:true
regexp Shows the resources having a URL that matches the given regular expression. regexp:\d{5}
regexp:mdn|mozilla

To find all 404, not found, errors, you can type 404 into the search and auto-complete will suggest "status-code:404" so you'll end up with something like this:

Search Requests

Use the new Search panel to run a full-text search on request/response headers and content.

Context menu

Context-clicking on a row in the list displays a context menu with the following options:

  • Copy URL
  • Copy URL Parameters
  • Copy POST Data (only for POST requests)
  • Copy as cURL
  • Copy Request Headers
  • Copy Response Headers
  • Copy Response
  • Copy Image as Data URI (only for images)
  • Copy All As HAR
  • Save All As HAR
  • Save Image As (only for images)
  • Resend
  • Edit and Resend
  • Open in New Tab
  • Start Performance Analysis for the page

Resend

The Resend context menu option allows you to resend the request as it was originally sent with no changes made.

Edit and Resend

This option opens an editor enabling you to edit the request's method, URL, parameters, and headers, and resend the request.

Open in New Tab

Resends the request in a new tab — very useful for debugging asynchronous requests.

Copy as cURL

This option copies the network request to the clipboard as a cURL command, so you can execute it from a command line. The command may include the following options:

-X [METHOD] If the method is not GET or POST
--data For URL encoded request parameters
--data-binary For multipart request parameters
--http/VERSION If the HTTP version is not 1.1
-I If the method is HEAD
-H

One for each request header.

From Firefox 34, if the "Accept-Encoding" header is present, the cURL command will include --compressed instead of -H "Accept-Encoding: gzip, deflate". This means that the response will be automatically decompressed.

Copy/Save All As HAR

These options create an HTTP Archive (HAR) for all requests listed. The HAR format enables you to export detailed information about network requests. 'Copy All As HAR' copies the data to the clipboard, 'Save All As HAR' opens a dialog allowing you to save the archive to disk.

The new 'HAR' dropdown menu includes both the 'Copy All As HAR' and 'Save All As HAR' commands, as well as an 'Import...' option.

Network Monitor Features

The following articles cover different aspects of using the network monitor: