How much Google is removed from Brave Beta?

I have already read through this topic:

…and the tweet linked therefrom. As well I have looked through this forum and read what I can find on the topic, but I am looking for more, or more detailed information about what is stripped from Chromium to create the new Brave (which looks great so far).

The main readme for Ungoogled Chromium has a fairly comprehensive description of what is stripped out of the Chromium build process and browser (copied bleow). Is there similarly comprehensive documentation anywhere for the Brave build?

From the ungoogled chromium github repo:


A number of ungoogled-chromium’s changes are subtle and evolve over time. As a result, it is best to consult the source code for complete and up-to-date information.

ungoogled-chromium selectively borrows many of its features from the following (in no particular order):

  • Debian
  • Inox patchset
  • Iridium Browser
  • Bromite

Most of the additional features are as follows:

  • Replace many web domains in the source code with non-existent alternatives ending in qjz9zk (known as domain substitution)
  • Strip binaries from the source code (known as binary pruning;)
  • Disable functionality specific to Google domains (e.g. Google Host Detector, Google URL Tracker, Google Cloud Messaging, Google Hotwording, etc.)
  • Add Omnibox search provider “No Search” to allow disabling of searching
  • Disable automatic formatting of URLs in Omnibox (e.g. stripping http://, hiding certain parameters)
  • Added menu item under “More tools” to clear the HTTP authentication cache on-demand
  • Add new command-line switches and chrome://flags entries:
    • --disable-beforeunload - (Not in chrome://flags) Disables JavaScript dialog boxes triggered by beforeunload
    • --disable-search-engine-collection - Disable automatic search engine scraping from webpages.
    • --enable-stacked-tab-strip and --enable-tab-adjust-layout - These flags adjust the tab strip behavior. --enable-stacked-tab-strip is also configurable in chrome://flags Please note that they are not well tested, so proceed with caution.
    • --extension-mime-request-handling - Change how extension MIME types (CRX and user scripts) are handled. Acceptable values are download-as-regular-file or install-always. Leave unset to use normal behavior. It is also configurable under chrome://flags
    • --fingerprinting-canvas-measuretext-noise (Added flag to Bromite feature) - Scale the output values of Canvas::measureText() with a randomly selected factor in the range -0.0003% to 0.0003%, which are recomputed on every document initialization.
    • --fingerprinting-client-rects-noise (Added flag to Bromite feature) - Implements fingerprinting deception of JS APIs getClientRects() and getBoundingClientRect() by scaling their output values with a random factor in the range -0.0003% to 0.0003%, which are recomputed for every document instantiation.
    • --fingerprinting-canvas-image-data-noise (Added flag to Bromite feature) - Implements fingerprinting deception for Canvas image data retrieved via JS APIs. In the data, at most 10 pixels are slightly modified.
    • --max-connections-per-host (from Bromite) - Configure the maximum allowed connections per host.
    • --set-ipv6-probe-false - (Not in chrome://flags) Forces the result of the browser’s IPv6 probing (i.e. IPv6 connectivity test) to be unsuccessful. This causes IPv4 addresses to be prioritized over IPv6 addresses. Without this flag, the probing result is set to be successful, which causes IPv6 to be used over IPv4 when possible.
  • Force all pop-ups into tabs
  • Disable Safe Browsing
    • See the FAQ
  • Disable intranet redirect detector (extraneous DNS requests)
    • This breaks captive portal detection, but captive portals still work.
  • Add more URL schemes allowed for saving
  • (Iridium Browser feature change) Prevent URLs with the trk: scheme from connecting to the Internet
    • Also prevents any URLs with the top-level domain qjz9zk (as used in domain substitution) from attempting a connection.
  • (Iridium and Inox feature change) Prevent pinging of IPv6 address when detecting the availability of IPv6. See the --set-ipv6-probe-false flag above to adjust the behavior instead.
  • Support for building Linux packages for multiple distributions (work in progress)
  • Windows support
    • Does not set the Zone Identifier on downloaded files

Hello @pjv,

We’ve addressed the general question of “But is there Google in there?” several times, and I will provide links at the bottom to those instances for your reference. However I’m going to cc @luke.mulks in to give you a more involved answer.

@Mattches I was the person who asked the question in the first link that @pjv listed.

I have ever since been wondering the same thing though. What I mean by that is that I understand the general answer that Google is removed, but when I see projects such as ungoogled chromium and iridium, and how these projects have dozens of patches, I wonder how Brave stacks up compared to that?
For example, all the patches that @pjv just listed, does Brave include all of those?
I hope my question makes sense.

I see a lot of confusion surounding this on several forums all the time, people don’t know how much is removed.

Thank you.

Hey all,

  1. You can check out which flags we have enabled | disabled by going to our dev or beta releases (that use the chromium front end) and entering chrome://flags/ into the URL bar. This should answer the flag-related questions.

  2. For any questions regarding network callbacks: I can tell you with high confidence that the team has made it a priority to disable features that leak back to google. That said, don’t trust me. You can check for yourself by entering: chrome://net-internals to run a capture of the traffic sent to and from the browser, within the browsing context, and that should clear up those questions and concerns. You’ll also see that Omnibox pre-rendering is disabled.

  3. Brave does not use Google’s safe browsing.

Keep in mind that if you’re auth’d into Google (gmail/etc.) you’ll likely see some callbacks to google, which is expected behavior for using their services.

You can also export json session captures from chrome://net-internals and call me out here if you see anything suspicious. I’ll be happy to review and pursue further action to squash anything suspect, or forward to security to handle in the codebase.

We put a lot of time and effort into making sure that we don’t phone home, and that users operate in an environment with authentic consent (stop 3P from tracking you without consent). If you ever notice anything suspect, let us know. I can guarantee you that the team prioritizes resolving these suspicions, not to cover up for anything, but because there’s a fair amount of discovery and reporting…and it’s the right thing to do. We care about privacy, and drive this browser in our own browsing, so we really want to make sure our user base can browse with confidence too.

Let me know if there are any questions (please tag me - so I can see it). Thanks!


@luke.mulks bringing the :fire::fire: as usual.

I’ll leave this topic open for a while in case anyone has further questions or concerns on the subject. But will close it if there’s a lack of activity.

1 Like

I’m not sure what

@luke.mulks bringing the :fire::fire: as usual.

…is actually supposed to mean, but in any case, if my OP sounded like any kind of suspicion of either nefarious intent or negligence on the part of Brave devs, it definitely was not meant to. As I said, so far, the new Chromium-derived Brave is looking really good to me.

As a peripheral contributor to the Ungoogled Chromium (UC) project and someone who has been running a self-compiled browser using that codebase for a while, I’m just trying to (maybe lazily) get some specific information about how my level of un-googled-ness would change if I switched from UC to Brave without laboriously digging through the source of all the patches. What I was hoping is that someone who had a big picture familiarity with the specific set of patches that the Brave development team is maintaining could read through the high-level descriptions in my OP and say something like,

“yeah, we have patches mitigating all those same vulnerabilities and in addition, a., b., c.”


“we’re also building on top of the iridium patchset, but aren’t using any of the inox patches and we also have our own mitigations for x., y., z. We didn’t know about the fingerprinting protection patches from bromite and will look at them for possible inclusion in Brave.”

… something like that.

One thing I will note for anyone following along is that installing extensions from the Chrome Web Store (which UC does not directly allow, but Brave does), does cause Brave to phone home to Google servers looking for updates to those extensions. I do use a number of extensions in UC which I have been manually updating. I have a home-built process for doing that which makes it a bit less of a PITA then it sounds like, but the convenience of self-updating extensions might be a worthwhile tradeoff for me - I’m on the fence about it.

So thanks @luke.mulks for your specific responses and if you know anyone on the dev team that might be able to shed more light on the specific patches at a glance, that would be welcome from me, and maybe for others as well.

1 Like

Thanks for the clarification.
Let me try to grab a dev who can answer this - appreciate your patience and thoroughness!
cc @sampson @clifton @brian

In the internals I see it still calls GOOGLE - see attachedDJM-OAHU_1964

1 Like

Fresh install is showing lots of connections to Google’s on startup :frowning:
Even with google search disabled by default.
My guess is it’s for Google safe search? But really shouldn’t be active by default IMO.
Capture with tcpdump:

1 Like

I think they’re working on this.

1 Like

We’re also working on a doc/wiki that will address all concerns related to “Google in Brave” since it’s so frequently brought up. Hang tight on that and remember that your privacy and data are one of Brave’s primary concerns.

Leaving this thread open for others to drop questions or comments in on. I’ll post or link to the above mentioned statement here as well.