Why you still need an extension for dark mode
Browsers and operating systems have carried a dark preference for years. A site can read it through the prefers-color-scheme CSS media query and serve its own dark theme, and a growing number do.
The problem is everything else. Most of the web, documentation, forums, government sites, older news archives, internal tools, anything built before roughly 2019 and never revisited, has exactly one theme, and it is white. Setting your operating system to dark does nothing to those pages. That gap is why dark mode extensions remain among the most-installed extensions on every store despite the feature being nominally built into the platform.
Two things to try before installing anything
- Check the site's own settings. A hand-built dark theme by the people who chose the brand colours will always beat a generated one. Many sites that have one do not follow your OS preference automatically, and the toggle is sitting in a settings menu.
- Try Chrome's built-in force-dark. Chrome and Edge include an experimental "Auto Dark Mode for Web Contents" flag that darkens pages with no dark theme of their own. It is crude, an algorithmic transformation with no per-site intelligence, but it costs nothing, requires no permission grant, and is worth the ten seconds.
If neither of those solves it, you want an extension, and in practice that means Dark Reader or Night Eye, the two products this guide spends most of its time separating. The question that decides between them is which technique each uses.
How dark mode extensions actually work
There are two fundamentally different approaches, and knowing which one is running explains nearly every problem you will ever have with one of these tools.
Filter-based darkening
The extension applies a CSS or SVG filter that inverts the entire page, then selectively inverts specific elements, images, videos, canvases, embedded frames, back again. It is extremely cheap, and it works instantly on any page because it does not need to understand the page at all.
It is also blunt. Colour hues shift, so brand colours come out wrong. Content that was already dark gets flipped to light. Anything the exception list misses looks inverted, and the classic symptom is a photograph rendered as a negative.
Analytical darkening
The extension parses the page's stylesheets, works out which declarations are colours and what role each plays, background, text, border, accent, and generates a replacement stylesheet with those colours remapped rather than inverted. Brand colours stay recognisable, images are left alone, and text contrast can be controlled deliberately rather than falling out of arithmetic.
The cost is real: it needs to run before or during first paint, it holds a generated stylesheet in memory for every tab, and it can be defeated by pages that write styles from JavaScript after load.
Which tool uses which
Dark Reader offers both, plus a lightweight static mode. Its Dynamic mode is the analytical one and the default: it deeply analyses stylesheets, background images and vector graphics, and produces the best visual result. Filter and Filter+ are the inversion approach, kept deliberately as a fallback for pages Dynamic cannot handle. Static rapidly generates a basic stylesheet and is very light on CPU.
Night Eye is analytical only. Its entire pitch is that it analyses each page's colours and converts them rather than inverting, specifically to avoid the bright spots, flashes and hue shifts that inversion produces. There is no filter fallback, which is both its strength and, on pages where the analysis fails, its weakness.
Dark Reader vs Night Eye: what you actually get for the money
| Dark Reader | Night Eye | |
|---|---|---|
| Price on Chrome / Firefox / Edge | Free | Free for 5 sites in 1 browser; $9/yr for 3 browsers, $14/yr for 6, $40 one-time for 10 |
| Price on Safari | $4.99 one-time, covering iPhone, iPad, Mac and Vision Pro on one Apple ID | Included in the cross-browser licence |
| Source code | Open source, MIT licence | Closed source |
| Rendering technique | Dynamic (analytical), Filter, Filter+, Static | Colour conversion only |
| Fallback when a site renders badly | Switch that site to another mode | Exclude the site |
| Per-site customisation | Per-site settings plus a built-in CSS editor | Per-site settings |
| Trial | Not needed | Three months of Pro |
| Browser breadth | Chrome, Firefox, Edge, Safari | Chrome, Firefox, Safari, Edge, Opera, Brave, Vivaldi and others, on one licence |
The case for Dark Reader
It has been developed since 2014, it is open source under the MIT licence, and it is free on every browser except Safari. Nothing else in the category has as much configuration: brightness, contrast, sepia, greyscale, a custom colour palette, per-site settings, and a CSS editor for fixing an individual page yourself. Its community filter-fix pipeline means sites that render badly tend to get fixed upstream over time.
The single most underrated feature is the mode switcher. When Dynamic mode breaks one site, you drop that site to Filter and carry on. Night Eye has no equivalent, because it only has one engine.
The case for Night Eye
It is narrow and specific, and it is not "it is better". Night Eye's colour conversion sometimes handles particular sites more cleanly than Dark Reader's Dynamic mode, heavily styled dashboards and web apps are where people report the difference. If those sites are where you spend your working day and you do not want to hand-write CSS fixes, that is worth something.
The other real argument is cross-browser economics. If you genuinely use four or five browsers, one Night Eye licence covering all of them is tidier than configuring Dark Reader separately in each, and the $40 one-time Ultimate tier removes the subscription question entirely.
That is the honest comparison: Dark Reader wins on configurability, transparency and price, and Night Eye wins only if it happens to render your specific sites better. Which is a thing you can test for free, and should.
Including what the free tier of each actually allows.
How to test them properly before paying anything
Because the difference between these two is site-specific, a review cannot answer the question for you, including this one. A twenty-minute test can.
- Write down your five most-visited sites. Not the impressive ones; the actual ones. Your email client, your issue tracker, one documentation site, one forum, one news site.
- Install Dark Reader first, in Dynamic mode. Visit all five. Note anything wrong: unreadable text, washed-out panels, inverted images, a flash of white on load.
- For each failing site, try Filter mode on that site only. Half the time this fixes it, and if it does, you are finished and it cost nothing.
- If sites are still wrong, start Night Eye's three-month Pro trial and check the same five. Night Eye's free Lite tier covers five sites in one browser, which is coincidentally exactly the size of this test, you may not even need the trial.
- Decide on evidence. If Night Eye renders your five noticeably better, its annual pricing is trivial against the hours you spend on those pages. If it does not, you have your answer and you have spent nothing.
The one thing not to do is run both simultaneously during the test. Two dark mode extensions on the same page will darken the already-darkened page, and you will conclude that both are terrible.
What a dark mode extension costs you in performance
Every analytical dark mode extension costs something measurable. It runs before or during first paint, holds a generated stylesheet per tab, and re-runs when the page mutates. On a heavy single-page application with thirty tabs open, this shows up in both memory and time to first render.
The tradeoff between modes is essentially fixed:
- Dynamic / analytical, best visual result, highest cost. Adds work on initial page load because it must analyse stylesheets, background images and vector graphics before it can generate a theme.
- Filter, near-zero cost, applies instantly, worst fidelity. It cannot flash white on load, because it does not need to understand anything first.
- Static, very light on CPU, generates a basic stylesheet quickly, tends to break on complex JavaScript-driven sites.
The right way to use this
Do not pick one mode globally and live with the consequences. Set Dynamic as your default because it produces the best result on the majority of the web, then demote individual problem sites. A site that is slow with Dynamic goes to Static; a site that renders wrong with Dynamic goes to Filter; a site that fails both goes on the exclusion list. That is three settings changes over a month of normal browsing, and it gets you the best of each engine rather than the average of them. This per-site demotion is the capability Night Eye does not have, since it ships a single engine.
If your machine is old or you habitually keep many tabs open, the honest move is to default to Static and promote only the handful of sites where you care about fidelity. This is the opposite of the usual advice and it is correct for that hardware.
Why sites break, and the fix for each symptom
| Symptom | Cause | Fix |
|---|---|---|
| Flash of white before the page darkens | The analytical engine ran after first paint | Unavoidable in Dynamic mode on slow pages; Filter mode eliminates it because it applies instantly |
| Already-dark site flipped to light | Filter mode inverted a page that was already dark | Exclude the site, or use Dynamic there |
| Photographs rendered as negatives | Inversion applied to images it should have skipped | In Dynamic mode, apply invert only to dark images that would vanish on a dark background, icons, diagrams, line charts, never photographs |
| Text unreadable against its own background | The engine remapped background and foreground inconsistently | Raise contrast for that site, or switch modes |
| Page renders correctly then reverts | The site writes styles from JavaScript after load | Filter mode, which applies over whatever the page ends up as |
| Whole site is a mess in every mode | Heavily custom rendering, canvas or web components | Exclusion list. A permanently broken page is worse than a bright one |
The counter-example: when a dark mode extension is the wrong tool
There is a category of work where you should turn these off entirely, and it is worth being explicit because nobody selling one will tell you.
Anything where colour is the content. Photo editing, print proofing, design review, data visualisation with a meaningful colour scale, medical or scientific imaging, checking your own site's contrast ratios for accessibility. An extension that remaps colours is by definition lying to you about them, and in Filter mode it is inverting them. If you are judging a colour, judge it with the extension off, on a site-level exclusion so you do not have to remember.
The related trap is designing in dark mode with an extension on and shipping something you have never seen as your users will. If you build for the web, keep one browser profile with no dark mode extension at all and do your final look there.
The permission these extensions need, and why it matters
A dark mode extension must read and modify the content of every page you visit. There is no lighter version of that permission that would let it do the job, it has to see your stylesheets to rewrite them, on every site, including the ones where you are logged in.
That is among the most powerful permissions a browser grants, and it is the same class of permission a content blocker needs, which we cover in the guide to ad blockers. Three consequences worth internalising:
- Prefer open source. Dark Reader is MIT-licensed with public source, which means the claim that it sends nothing anywhere is checkable rather than merely asserted. That is a real reason to prefer it over any closed-source competitor, independent of features.
- Prefer well-known. The dark mode category is a known target for extension acquisitions, where a popular extension with a large install base changes hands and the new owner adds something unpleasant in an update. Scale and scrutiny are protection.
- Do not install one because it looked nice in a screenshot. There are dozens of near-identical dark mode extensions on every store with no visible provenance. The screenshot is the cheapest part to fake.
If you are uncomfortable with the permission and only want dark reading for articles, both Firefox Reader View and Safari Reader offer a dark theme with no extension and no permission grant at all. It only works on article-shaped pages, but on those pages the result is cleaner than anything an extension generates.
Safari, iPhone and Mac: why these cost money
Safari supports page-modifying extensions only through apps distributed on the App Store, which means there is no free distribution channel of the kind Chrome and Firefox provide. That is why the Safari versions of these tools are paid where the same tool is free elsewhere, and it is a platform fact rather than a decision by either developer.
- Dark Reader for Safari is a single $4.99 App Store purchase covering iPhone, iPad, Mac and Apple Vision Pro under one Apple ID, with no in-app purchases and no subscription. Given the extension is free on every other browser, this is the one place Dark Reader costs anything, and it is still cheaper than a year of most alternatives.
- Night Eye ships a Safari app and includes it in the same cross-browser licence, which is better economics if Safari is one of several browsers you use rather than your only one.
Where dark mode extensions do not exist at all
Mobile is where the category thins out sharply, and most guides gloss over it:
- Chrome for Android does not support extensions. There is no dark mode extension option at all; you are limited to Chrome's own force-dark setting in flags or accessibility settings.
- Firefox for Android supports a subset of extensions, and Dark Reader is among them. That makes it the only mainstream mobile browser where a full dark mode extension is available for free, the same conclusion the ad blocker guide reaches for the same reason.
- Safari on iOS supports the App Store apps above, so both options are available if you are willing to pay.
- Chromium forks on Android that load Chrome extensions exist and work, but they are a workaround rather than a recommendation, given the permission these extensions hold. The identical reasoning applies to content blockers on mobile, covered in the ad blocker guide.
The options that need no extension at all
Worth knowing, because for a meaningful share of people one of these is sufficient and involves granting nothing.
- Chrome and Edge force-dark. The "Auto Dark Mode for Web Contents" flag applies an algorithmic dark transformation to pages with no dark theme. No per-site handling, no configuration, no permission grant, no memory cost. Results are visibly cruder than Dark Reader's Dynamic mode, and for casual browsing many people cannot tell.
- Reader modes. Firefox Reader View and Safari Reader strip an article to text and offer a dark theme. On long-form reading this beats every extension because it is the site's own semantic content re-rendered, not its stylesheet rewritten.
- The site's own dark mode. Increasingly common, always better than a generated theme, and frequently not wired to your OS preference, check the settings menu.
- System-level inversion. Both macOS and Windows offer accessibility colour inversion. It is a blunt instrument that affects everything on screen, but as an occasional tool for one stubborn page it works.
- Reducing display brightness and enabling a warm colour filter. If your actual problem is eye strain at night rather than aesthetics, Night Shift, f.lux or the equivalent addresses the cause more directly than turning pages black does.
That last point deserves emphasis because the category is often sold on eye health. Dark mode is a preference with real comfort benefits in dim rooms; it is not a medically established fix for eye strain, and for some people with astigmatism light text on a dark background is harder to read, not easier. If you have tried dark mode and disliked reading it, that is a legitimate result and not a configuration failure.
What to install
| Situation | Install | Cost |
|---|---|---|
| Chrome, Edge, Firefox or Brave on desktop | Dark Reader | Free |
| Safari is your only browser | Dark Reader for Safari | $4.99 one-time, all Apple devices |
| You use four or five browsers daily | Night Eye | From $9/yr, or $40 once |
| Dark Reader renders your key sites badly | Night Eye, on the three-month trial first | Free to test |
| Android | Firefox with Dark Reader, or Chrome's force-dark flag | Free |
| You mostly read articles | Firefox Reader View or Safari Reader | Free, no permissions |
| You judge colour for work | Nothing, on a dedicated browser profile | Free |
Three rules
- One extension at a time. Two dark mode extensions will darken the darkened page and the result is unreadable. This is the single most common self-inflicted problem in the category.
- Do not pay on a review. The whole difference between these two products is site-specific, so the only evidence that means anything is what your own five sites look like. Both have free paths to that evidence.
- Check the site first. A native dark theme built by the people who chose the colours always beats a generated one, and it is free and already installed.
If you want to work through the pair directly, the Dark Reader vs Night Eye comparison lays out the feature grid; you can also browse the wider category in the software directory or start from the comparison index. And if you are about to grant page-modification permissions anyway, it is worth applying the same scepticism to your content blocker, our ad blocker guide covers what changed there after Manifest V3.
Questions people ask
- Is Dark Reader free?
Yes on Chrome, Firefox and Edge, where it is free and open source under the MIT licence, with no paid tier and no in-app purchases.
The exception is Safari. Because Apple distributes page-modifying extensions only through the App Store, Dark Reader for Safari is a paid app: a one-time $4.99 purchase that covers iPhone, iPad, Mac and Apple Vision Pro signed in to the same Apple ID.
- Is Night Eye better than Dark Reader?
Not in general. Dark Reader is free, open source and far more configurable, with four rendering modes, per-site settings and a built-in CSS editor, and its ability to drop a single problem site to Filter mode has no Night Eye equivalent.
Night Eye converts colours rather than inverting them and sometimes renders heavily styled sites more cleanly. Since the difference is entirely site-specific, test both on the pages you actually use, Night Eye offers a three-month Pro trial and its free tier covers five sites, which is enough to decide.
- Does Night Eye have a free version?
Yes, but it is capped by usage rather than by features. The free Lite tier applies dark mode to five sites of your choosing in a single browser, with full functionality on those sites.
Paid tiers remove the site limit and increase browser coverage: $9 a year for three browsers, $14 a year for six, and a $40 one-time Ultimate licence for ten. New users also get three months of Pro free.
- Why do dark mode extensions break some websites?
Because they rewrite styles the site never expected to be rewritten. Analytical modes parse the stylesheet and remap colours, which fails when a page writes styles from JavaScript after load; filter modes invert the whole page and un-invert an exception list, which fails on anything the list misses, the classic symptom being photographs rendered as negatives.
The fix is almost always to change the mode for that one site rather than globally, or to add it to the exclusion list. A permanently broken page is worse than a bright one.
- Do dark mode extensions slow down your browser?
Analytical modes have a genuine cost. Dark Reader's Dynamic mode analyses stylesheets, background images and vector graphics before it can generate a theme, which adds work on initial page load and holds a generated stylesheet in memory for each tab.
Filter and Static modes are far cheaper on CPU but produce worse results on complex sites. If you keep many tabs open and notice sluggishness, defaulting to Static and promoting only the sites where fidelity matters is the right trade.
- Can I get dark mode on Chrome without an extension?
Yes. Chrome and Edge include an experimental "Auto Dark Mode for Web Contents" flag that force-darkens pages with no dark theme of their own.
It is an algorithmic transformation with no per-site handling, so results are visibly cruder than a dedicated extension, but it requires no installation, no memory overhead and no permission to read your pages, which for casual browsing is a reasonable trade.
- Are dark mode extensions safe?
The good ones are, but the permission involved is serious: any dark mode extension must be able to read and modify every page you visit, including pages where you are signed in. There is no narrower permission that would let it work.
That is a strong argument for preferring an open-source option such as Dark Reader, whose MIT-licensed source can be inspected, and for avoiding obscure extensions with large install bases and no visible provenance, a known target for acquisition and later abuse.
- What is the difference between Dark Reader's Dynamic and Filter modes?
Dynamic mode analyses the page's stylesheets, background images and vector graphics and generates a replacement theme, remapping colours rather than inverting them. It produces the best visual result and costs the most on page load.
Filter mode applies a CSS or SVG filter that inverts the whole page and then reverts specific elements such as images and videos. It is instant and very cheap, but it shifts hues, can invert already-dark content back to light, and affects images the exception list misses. Use Dynamic by default and Filter as a per-site rescue.
- Does dark mode reduce eye strain?
It reliably reduces discomfort when reading a bright screen in a dim room, which is a real and common benefit. It is not an established medical fix for eye strain in general.
Some people, particularly those with astigmatism, find light text on a dark background harder to read rather than easier. If your concern is specifically night-time comfort, reducing display brightness and enabling a warm colour filter addresses the cause more directly than making every page black.
- Can I use a dark mode extension on my phone?
It depends on the browser. Chrome for Android does not support extensions at all, so your only option there is Chrome's own force-dark setting. Firefox for Android does support Dark Reader, making it the only mainstream mobile browser where a full dark mode extension is available free.
On iOS, Safari supports both Dark Reader and Night Eye through their App Store apps, which is why both cost money on Apple platforms.
- Should I run two dark mode extensions at once?
No, and this is the most common self-inflicted problem in the category. Two extensions will each darken the page, so the second one darkens output the first already darkened, and the result is unreadable rather than twice as good.
If you are testing one against another, disable the first completely before enabling the second, and judge them on the same set of sites.
