After months of private beta testing, the DuckDuckGo browser for Mac beta is now available to anyone (grab it at duckduckgo.com/mac if you’re interested in checking it out). The company started as a privacy-oriented search engine and now offers mobile apps and browser extensions, all aimed at reducing the ability of companies to track your every move online.
The next logical step is for the company to make its own web browser, so that’s exactly what it’s doing. I spent a few days with the DuckDuckGo beta and, while I like what I see so far, it’s not quite ready to be my everyday browser just yet. It’s clean, simple, and performs well, but lacks a few features that are table stakes in modern desktop browsers such as extension support and syncing bookmarks and passwords across devices.
Not just another Chromium browser!
You’d be crazy to try to write an entire web rendering engine from scratch these days, so DuckDuckGo, relies on the WKWebView API to render pages. Meaning, pages are rendered with Apple’s WebKit implementation. But all the rest of the browser–tabs, bookmarks, password management, etc.–is custom code written by DuckDuckGo. That has the advantage of not taking a lot of cruft along with it and remaining laser-focused on the company’s mission of enhancing privacy on the web, but it also means a lack of compatibility with important third-party features like browser extensions or hooks into apps like password managers.
Foundry
Those sorts of things are eventually coming (in a way that “meets our high standards of privacy and quality”, the company says), but it could make the first version of the browser a non-starter for some users, depending on which other apps they use that are meant to work with your browser.
A number of features have been added since the invite-only beta began earlier this year, including pinned tabs and a bookmark bar. Since DuckDuckGo never saves your browsing history online, they implemented a browser history that is just a list saved to your local machine. Some of these things still need a bit of polish. For example, I’m a heavy bookmarks bar user, and I middle-click to open links in a new tab quite often. That works on web pages as expected, but middle-clicking bookmarks (from the menu or bar) does nothing.
Blocking trackers, ads, and more
The main conceit of DuckDuckGo is that it helps prevent you from being tracked online. It blocks what the company calls “invasive trackers” before they even load, which can save a lot of data transmission and make pages load faster and operate more smoothly. That doesn’t mean everything is blocked–there are less-invasive trackers used for things like auditing web traffic, and non-tracking plugins that do things like load fonts are allowed through.
This means that while DuckDuckGo doesn’t specifically have an “ad blocker” built in per se, it ends up blocking most ads by default because most ads and ad networks are just loaded with trackers. The private beta had empty placeholders where ads should be, but the open beta version now removes them to make pages look better.
The desktop browser carries the “Fire Button” over from the company’s mobile browsers. This is a one-click button to nuke all your browsing history and data. Unlike the mobile versions, the Mac browser gives you the option of clearing only data from sites visited in the current tab or current window. Since so many sites use cookies to save logins, you’ll be asked when you log in to sites if you want to “fireproof” the login–so the Fire Button removes everything but the cookie that keeps you logged in.
Foundry
DuckDuckGo has some other nice blockers that you’ll probably appreciate. Those cookie consent forms that pop up on every site? By default, the browser will detect them and automatically set preferences to maximize privacy, then close the pop-up. And Global Privacy Control automatically sets those CCPA and GDPR options to prevent the transfer or sale of your data, but only for sites that respect GPC settings (hundreds of thousands do, but many do not yet). The browser also forces HTTPS where available.
These options are enabled by default, but if you run into problems where sites aren’t working properly, you can always turn them off. Clicking the little shield button in the URL bar will let you see exactly what has been blocked on the site, disable protections for that site
The genius of Duck Player
Perhaps my favorite new feature of the DuckDuckGo desktop browser is something the company calls “Duck Player.” It opens YouTube videos in a nice large distraction-free view, and while it still uses the YouTube player, most of the tracking and identification code is blocked. It strips out all the targeted ad code and cookies. You can still get ads, they just won’t be targeted at you based on your web use, but rather simply ads that paid to be on videos that match certain criteria. You know, the way advertising used to be on the web–ads pay to be on certain content, not to reach targeted individuals.
Foundry
Because so many YouTube ads rely on deep individual targeting, you’ll get a lot fewer ads. You’ll also not get recommended videos that are based on your viewing history, so you won’t fall down a rabbit hole of crazy conspiracy theories and other sensationalist nonsense. To be clear, your views are still counted and show up in your YouTube watch history, they just don’t contribute to your individualized advertising profile and personalized recommendations are blocked.
You’ll get a popup asking if you want to use Duck Player any time you click on a YouTube link, but you can disable it entirely or set it to always play all YouTube videos. It really is a much more pleasant YouTube viewing experience.
DuckDuckGo beta performance
All the privacy features in the world don’t mean a lot if a browser is slow and unresponsive. Though it’s just a beta, I ran DuckDuckGo through all three web speed tests at browserbench.org to compare it to Chrome 106, Firefox 106, and Safari 16.1. I used an M2 MacBook Air running macOS Ventura for these tests.
While it’s based on Apple’s WebKit API, DuckDuckGo is not nearly as fast as Safari 16.1–it’s not uncommon for WKWebView to lag behind the latest WebKit rendering optimizations you’ll find in Safari. But in these tests, DuckDuckGo is quite a bit faster than FireFox 106 and about on par with Chrome 106, which is an excellent result. Coupled with all the trackers and such that are blocked before they are loaded, DuckDuckGo feels very fast.
Still in the awkward adolescent phase
As much as I love Duck Player and the way DuckDuckGo’s browser automatically handles all those cookie popups for me, I find it hard to recommend just yet. I didn’t find a lot of fully broken sites, but the tracker blocking is so aggressive that it entirely blocks native video players and other useful things on some sites. You can always disable protections, but it’s hard to know what you need to if you don’t know which site features are missing.
More importantly, the browser simply doesn’t work with plugins at all yet. It has its own password manager, but that doesn’t sync between devices yet. It will soon have integrated compatibility with Bitwarden, but if you don’t use that password manager you’re out of luck. The universal autofill function of 1Password works, but that only fills in passwords, it doesn’t save or suggest new ones. And while you can import passwords from other browsers, that’s a one-way street.
Even bookmarks do not yet sync between devices. Until we get multi-device sync and a way to work with the most popular password managers, I can’t see myself doing more than dipping my toe in DuckDuckGo’s waters. The lack of support for other sorts of plugins is less cumbersome–ad and script blockers are the most common, and DuckDuckGo’s integrated privacy protections take care of most of that on their own.
As this is only version 0.30, we can expect DuckDuckGo to be in a beta state for perhaps another year or so. Given what I see at this early state, I’m hopeful for the eventual full release.