Home / Guides

How to add or change request headers in Chrome

Need every request to a staging API to carry a Bearer token, or want to switch on a feature flag with a header? Chrome DevTools can't add headers to normal page requests, but a header extension can. This is all free in ProperHeader.

By RJ Macarthy · 3 November 2026

Add a header in four steps

  1. Click the ProperHeader icon in Chrome's toolbar.
  2. Under Request headers, click + Add header. Or click Bearer token under Quick start to add an Authorization header ready to fill in.
  3. Choose Set, type the header name (names autocomplete) and the value, for example Authorization and Bearer eyJhbGci….
  4. Allow ProperHeader on the site when asked, then reload the page.

Each header has its own on/off switch and an optional note, so you can keep several and flip between them.

Set, append or remove

Useful examples

GoalHeader
Call a staging API as a test userAuthorization: Bearer <token>
Send an API keyX-Api-Key: <key>
Turn on feature flagsX-Feature-Flags: new-checkout,dark-mode
Test a languageAccept-Language: fr-FR,fr;q=0.9
Debug server outputX-Debug: 1

Keep different setups apart with profiles

Group rules into profiles like "Local dev" and "Staging API" and switch with one click from the toolbar. The badge shows what's active, and Alt+Shift+H pauses everything instantly. The free plan includes one profile; Pro has unlimited profiles.

Only change some requests

By default a profile's headers apply on every site you've allowed. With Pro you can add Filters so headers only go to matching URLs, for example https://api.staging.example.com/*, with wildcard, contains, exact or regex matching and exclusions. That matters for tokens: you don't want your staging token sent to every site.

Questions

Can Chrome DevTools add request headers?

Not to normal page requests. DevTools can override some response headers in Local Overrides, but to add or change request headers on every request you need an extension.

Is it free to modify request headers with ProperHeader?

Yes. Unlimited request headers are on the free plan, with one profile. The free plan makes no network requests.

Why isn't my header being sent?

Check that ProperHeader is allowed on the site (the popup shows Site access), that the header and the main switch are on, and reload the page. Requests answered from a service worker's cache never reach the network, so no extension can change them.