Skip to main content

Simple Modify Headers Alternative: Free Header Rules With tweak

ยท 8 min read
Daniel Caldas
Co-founder

Simple Modify Headers does what its name says: it adds, changes or removes HTTP headers on the requests your browser makes. If that is why you installed it, this post shows how tweak's headers only rule does the same job, for free, with a url per rule, real regex, one click templates, and a team that still ships updates.

Where Simple Modify Headers is todayโ€‹

Simple Modify Headers still works, but it has gone quiet. Its last commit was in November 2024, and the newest release on its GitHub page is v1.8.1, from 2022. There are 30 open issues, some from 2022, with no visible answers.

The move to Manifest V3, the new platform browsers now require for extensions, also cost it features on Chrome. Its own README says so:

  • Individual cookie modification is no longer possible, so the cookie options were removed.
  • The "add" and "modify" actions now behave the same.
  • Custom request filtering is no longer possible.

And some limits were always there:

  • One url pattern for the whole config. Every header rule shares the same url pattern, so "this header on site A, that header on site B" takes extra work.
  • No regex. The pattern follows the browser's match pattern syntax, and you cannot set a port.
  • Save to apply. Changes only apply once you click save.

Open issues ask for things like filtering by HTTP method, folders for rules, and variables in header values. tweak already has all three.

Simple Modify Headers vs tweak at a glanceโ€‹

Simple Modify Headerstweak
MaintainedLast commit November 2024Yes, regular releases
Manifest V3Chrome only, Firefox on MV2Yes, on every browser
BrowsersChrome, Edge, FirefoxChrome, Edge, Firefox
Request and response headersYesYes, free
Set, Append, RemoveAdd and modify are the sameSet, Append and Remove are different operations
Url per ruleNo, one pattern for everythingYes
RegexNoYes
Filter by HTTP methodNoYes
Active tab only or always onNoActive tab or Global
Ready-made templates (CORS, cache)NoYes, free
Bulk import headers from DevToolsNoYes
Notes on each ruleA comment fieldMarkdown label and notes
Group rules in foldersNoYes, collections (Tweak Basic)
Variables in header valuesNoYes (Tweak Max)
Mock API responses, redirects, moreNoYes
Account neededNoNo
PriceFreeHeader rules free, paid plans for advanced features

How a header rule looks in tweakโ€‹

Switch a rule to Headers only and you get a row per header, with a dropdown that picks the operation:

a headers only rule with three operations

There are two tabs, one per direction. Response headers change what comes back before the page sees it. Request headers change what goes out before it leaves the browser.

Each rule has its own url expression and HTTP method. So one rule can set Authorization on your staging API, while another removes Content-Security-Policy on a different site, and neither gets in the other's way.

Set, Append and Removeโ€‹

Each row picks what to do with the header:

the operation dropdown showing set, append and remove

  • Set replaces the value, or adds the header if it is missing.
  • Append adds a value next to the existing one. Useful for a second Set-Cookie.
  • Remove strips the header out.

In Simple Modify Headers on Chrome, "add" and "modify" do the same thing. In tweak, Set and Append are two different operations, and both work.

Browsers only allow Append on a fixed list of request headers. Pick it on any other one and tweak tells you right there, instead of silently doing nothing:

an append picked on a header the browser refuses, flagged in red

Real regex, with a clear errorโ€‹

Simple Modify Headers matches with the browser's match patterns. tweak gives you the same simple url matching, plus a regex toggle when you need more. If the browser cannot compile your expression, the rule tells you, instead of looking enabled while doing nothing.

Active tab or always onโ€‹

Each rule has a Scope:

the scope dropdown with active tab and global options

  • Active tab applies the rule only while tweak is running, on that tab. You never forget a header override on and wonder a week later why a site behaves oddly.
  • Global applies it on every tab, whether or not tweak is running, and survives a browser restart. Good for a header you simply want on all day.

No save buttonโ€‹

There is no save step. Edit a row and it applies.

Templates for the headers everyone setsโ€‹

Most people install a header extension for the same few jobs. tweak has them ready, one click away, all free:

TemplateWhat it does
CORS unblockSets the Access-Control-* response headers, so "blocked by CORS policy" goes away
Disable cacheSets Cache-Control: no-store and friends, so a reload always hits the server
CSP auditSets a strict Content-Security-Policy-Report-Only, violations show in the console
CSP offRemoves the page's Content-Security-Policy headers

Each one is a normal header rule once added, with notes that explain what it does. Edit it, narrow it to one site, or delete it. Read more in the templates docs.

Paste headers in bulkโ€‹

Copied a block of headers from DevTools, or have them as a JSON object? Paste them into a header rule and tweak turns them into rows, so you do not have to type them one by one:

the bulk import dialog

Reaches every requestโ€‹

A headers only rule is applied by the browser itself. It reaches every request the page makes, not only fetch and XHR calls: page navigations, scripts, images, stylesheets and fonts. It can also set headers a page's own JavaScript is not allowed to touch, like Referer, Origin and User-Agent.

More than headersโ€‹

Headers are often the first step. When you need more, the same extension has it:

  • Mock rules: return your own response, status code and body, with no server.
  • Modify rules: call the real server, then patch the response before the page reads it (Tweak Basic).
  • Redirect rules: send a request somewhere else, like your local server.
  • Block rules: cancel a request to see how the page handles a failure.
  • Collections: group rules in folders and switch between them (Tweak Basic).
  • Variables: put {{token}} in a header value and change it in one place (Tweak Max).

Moving overโ€‹

  1. Install tweak on Chrome, Edge or Firefox.
  2. Create a rule and switch it to Headers only.
  3. Use your Simple Modify Headers url pattern as the rule's url expression.
  4. Add a row per header: Set for "add" and "modify", Remove for "delete". Paste them in bulk if you have many.
  5. Pick Active tab while you test, and Global for headers you want always on.
  6. Turn Simple Modify Headers off, so two extensions are not changing the same headers.

No account and no sign-up. Header rules are free on every plan: request and response headers, every operation, both scopes.

The bottom lineโ€‹

Simple Modify Headers is a fine, simple tool, and it served a lot of developers well. But it has gone quiet, Manifest V3 took features away on Chrome, and it still shares one url pattern across every rule.

tweak covers the same job for free, on Manifest V3, on Chrome, Edge and Firefox. You get a url and method per rule, regex, Set, Append and Remove as real operations, a clear scope, templates and bulk import. And when headers are not enough, mocks, redirects and the rest are right next to them.

Read the header rule docs or try tweak free.

If you liked this article, consider sharing (tweeting) it to your followers.



Did you like this article?

Need something else? Request a feature