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.
Add a header in four steps
- Click the ProperHeader icon in Chrome's toolbar.
- Under Request headers, click + Add header. Or click Bearer token under Quick start to add an
Authorizationheader ready to fill in. - Choose Set, type the header name (names autocomplete) and the value, for example
AuthorizationandBearer eyJhbGci…. - 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
- Set replaces the header, or adds it if it's missing. Use it for tokens, API keys and custom
X-headers. - Append adds to an existing value. Chrome only allows this for standard headers such as
Accept,Accept-Language,CookieandUser-Agent. - Remove strips the header from the request, for example to test how a site behaves without a cookie.
Useful examples
| Goal | Header |
|---|---|
| Call a staging API as a test user | Authorization: Bearer <token> |
| Send an API key | X-Api-Key: <key> |
| Turn on feature flags | X-Feature-Flags: new-checkout,dark-mode |
| Test a language | Accept-Language: fr-FR,fr;q=0.9 |
| Debug server output | X-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.