<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: PrivacyFixed</title>
    <description>The latest articles on DEV Community by PrivacyFixed (@privacyfixed).</description>
    <link>https://dev.to/privacyfixed</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4177946%2Ff1839a02-a2c2-4f00-a437-e8a7c91b8ae9.png</url>
      <title>DEV Community: PrivacyFixed</title>
      <link>https://dev.to/privacyfixed</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/privacyfixed"/>
    <language>en</language>
    <item>
      <title>We visited 200 websites from Virginia and from Frankfurt. The US visit got 3x the high-risk tracking.</title>
      <dc:creator>PrivacyFixed</dc:creator>
      <pubDate>Tue, 27 Oct 2026 22:02:58 +0000</pubDate>
      <link>https://dev.to/privacyfixed/we-visited-200-websites-from-virginia-and-from-frankfurt-the-us-visit-got-3x-the-high-risk-17a6</link>
      <guid>https://dev.to/privacyfixed/we-visited-200-websites-from-virginia-and-from-frankfurt-the-us-visit-got-3x-the-high-risk-17a6</guid>
      <description>&lt;p&gt;If you build or run a website, you probably test it from where you sit. For cookie banners and trackers, that means you see one version of your site, and visitors in other countries may see a very different one.&lt;/p&gt;

&lt;p&gt;We wanted to know how different, so we measured it.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;(General information, not legal advice.)&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What we did
&lt;/h2&gt;

&lt;p&gt;On 14 October 2026 we loaded the same websites, on the same day, with the same scanner settings, from two places: a server in &lt;strong&gt;Virginia (US)&lt;/strong&gt; and a server in &lt;strong&gt;Frankfurt (Germany, EU)&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The sites: a seeded random sample of popular websites from Google's Chrome UX Report list. &lt;strong&gt;200&lt;/strong&gt; of them loaded from both places, so all numbers below compare those 200.&lt;/li&gt;
&lt;li&gt;Homepage only, one visit each, as a first-time visitor: no cookies, and &lt;strong&gt;nobody clicked the cookie banner&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;We counted requests to outside companies, requests to services we rate high risk (ad exchanges, data brokers, cross-site analytics, ad pixels, fingerprinting), third-party cookies, and whether a cookie banner appeared.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What we found
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbcc4t5c9aasol5u3ongy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbcc4t5c9aasol5u3ongy.png" alt=" " width="800" height="549"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Average per website&lt;/th&gt;
&lt;th&gt;Visitor in Virginia&lt;/th&gt;
&lt;th&gt;Visitor in Frankfurt&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Requests to outside companies&lt;/td&gt;
&lt;td&gt;106.1&lt;/td&gt;
&lt;td&gt;60.7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;High-risk tracking requests&lt;/td&gt;
&lt;td&gt;12.6&lt;/td&gt;
&lt;td&gt;3.8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Third-party cookies&lt;/td&gt;
&lt;td&gt;13.2&lt;/td&gt;
&lt;td&gt;3.1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Showed a cookie banner&lt;/td&gt;
&lt;td&gt;24 of 200&lt;/td&gt;
&lt;td&gt;45 of 200&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;So the US visit triggered about &lt;strong&gt;3x the high-risk tracking requests&lt;/strong&gt; and &lt;strong&gt;4x the third-party cookies&lt;/strong&gt;, before any consent. And 21 sites showed a cookie banner &lt;strong&gt;only&lt;/strong&gt; to the Frankfurt visitor; Virginia never saw one.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this happens
&lt;/h2&gt;

&lt;p&gt;Most consent tools look up the visitor's country from their IP address and change behaviour:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;EU and UK visitors&lt;/strong&gt; generally have to agree before non-essential trackers load, so the banner shows and the trackers wait.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Most US visitors&lt;/strong&gt; fall under opt-out rules instead, so many sites load everything at once and show no banner, or a smaller notice.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That isn't automatically wrong. But it has two consequences for anyone testing a site:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;If you test from the US, you never see what your EU visitors get.&lt;/strong&gt; A broken banner, or a tag that fires before consent in the EU, stays invisible to you.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;If you test from the EU, you may think everyone gets the careful version.&lt;/strong&gt; Your US visitors may be loading three times the tracking you saw.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;One more US detail worth checking: California expects sites to treat the &lt;strong&gt;Global Privacy Control&lt;/strong&gt; browser signal as an opt-out. A site that ignores GPC for its US visitors has a problem that an EU test will never show.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to check your own site from another country
&lt;/h2&gt;

&lt;p&gt;The quick manual way:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Connect a VPN to the country you want (say, Germany), then open a &lt;strong&gt;new Incognito window&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Open DevTools (F12), go to the &lt;strong&gt;Network&lt;/strong&gt; tab, and tick &lt;strong&gt;Preserve log&lt;/strong&gt; before loading the page.&lt;/li&gt;
&lt;li&gt;Load your site and &lt;strong&gt;don't click the banner&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Filter with &lt;code&gt;-domain:*yoursite.com&lt;/code&gt; so only outside requests are left.&lt;/li&gt;
&lt;li&gt;Note what you see: did a banner appear? Which outside hosts loaded before you chose anything?&lt;/li&gt;
&lt;li&gt;Switch the VPN to the US (or your other market) and repeat in a fresh Incognito window. Compare the two lists.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I wrote up the DevTools part in more detail in &lt;a href="https://dev.to/privacyfixed/your-cookie-banner-might-be-decorative-how-to-check-what-loads-before-consent-1mm9"&gt;Your cookie banner might be decorative&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you'd rather not juggle a VPN: I build &lt;a href="https://privacyfixed.com" rel="noopener noreferrer"&gt;PrivacyFixed&lt;/a&gt;, and its free scan lets you pick where the visit comes from (the US, the EU or the UK). The report says which location it used.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqu5w3uz4oybef7gmh5oq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqu5w3uz4oybef7gmh5oq.png" alt=" " width="504" height="147"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Caveats
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Cloud servers, not homes.&lt;/strong&gt; Both visits came from data-centre IP addresses. Some sites treat those differently from home connections, so a real visitor's numbers can differ.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One day, one visit, homepage only.&lt;/strong&gt; Ads and tags rotate; a second visit can load a slightly different set.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Averages hide a lot.&lt;/strong&gt; Some sites behaved the same in both places; a few changed dramatically.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The UK isn't in these numbers.&lt;/strong&gt; Our scanner can also visit from London, but we haven't run this comparison from there yet.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The takeaway
&lt;/h2&gt;

&lt;p&gt;Your site doesn't have one privacy behaviour; it has one per region. Test it from each place your visitors come from, before consent and after a Reject, and you'll catch the problems your own location hides from you.&lt;/p&gt;

&lt;p&gt;Happy to answer questions about the method in the comments.&lt;/p&gt;

</description>
      <category>privacy</category>
      <category>webdev</category>
      <category>gdpr</category>
      <category>testing</category>
    </item>
    <item>
      <title>Your cookie banner might be decorative: how to check what loads before consent</title>
      <dc:creator>PrivacyFixed</dc:creator>
      <pubDate>Mon, 12 Oct 2026 17:36:17 +0000</pubDate>
      <link>https://dev.to/privacyfixed/your-cookie-banner-might-be-decorative-how-to-check-what-loads-before-consent-1mm9</link>
      <guid>https://dev.to/privacyfixed/your-cookie-banner-might-be-decorative-how-to-check-what-loads-before-consent-1mm9</guid>
      <description>&lt;p&gt;Most websites now show a cookie banner. Far fewer check what the page does before anyone clicks it.&lt;/p&gt;

&lt;p&gt;A common pattern: the banner appears, the visitor hasn't touched it yet, and Google Analytics, the Meta Pixel and a session-recording script have already loaded and sent their first requests. The banner is there, but it isn't controlling anything.&lt;/p&gt;

&lt;p&gt;In the EU and UK, non-essential trackers are supposed to wait for consent, so this is a real problem for the site owner, and most of them don't know it's happening. Here's how to check your own site in about five minutes, why it usually happens, and how to fix it.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;(General information, not legal advice.)&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Check it yourself with Chrome DevTools
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Open a &lt;strong&gt;new Incognito window&lt;/strong&gt;. You want a first-time visitor: no cookies, no earlier consent choice.&lt;/li&gt;
&lt;li&gt;Open DevTools (F12) and go to the &lt;strong&gt;Network&lt;/strong&gt; tab &lt;strong&gt;before&lt;/strong&gt; you load the page.&lt;/li&gt;
&lt;li&gt;Tick &lt;strong&gt;Preserve log&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Load your site and &lt;strong&gt;don't click anything on the banner&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;In the filter box, type &lt;code&gt;-domain:*yoursite.com&lt;/code&gt; (with your own domain; the &lt;code&gt;*&lt;/code&gt; keeps both &lt;code&gt;yoursite.com&lt;/code&gt; and &lt;code&gt;www.yoursite.com&lt;/code&gt; out). Now the list shows only requests to other companies.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Everything left in that list happened before consent. Look for hosts like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;google-analytics.com&lt;/code&gt;, &lt;code&gt;googletagmanager.com&lt;/code&gt; (Google Analytics, Google tag)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;connect.facebook.net&lt;/code&gt;, &lt;code&gt;facebook.com/tr&lt;/code&gt; (Meta Pixel)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;static.hotjar.com&lt;/code&gt;, &lt;code&gt;clarity.ms&lt;/code&gt; (session recording)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;analytics.tiktok.com&lt;/code&gt;, &lt;code&gt;bat.bing.com&lt;/code&gt; (ad pixels)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Then check cookies: &lt;strong&gt;Application → Cookies&lt;/strong&gt;. Anything like &lt;code&gt;_ga&lt;/code&gt;, &lt;code&gt;_fbp&lt;/code&gt; or &lt;code&gt;_hjSession&lt;/code&gt; set before you clicked is a tracker that didn't wait.&lt;/p&gt;

&lt;p&gt;Finally, click &lt;strong&gt;Reject&lt;/strong&gt; and keep watching the Network tab while you click through two or three pages. Requests to the same trackers after a Reject are the worst case: the visitor said no, and the site kept going.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why it happens
&lt;/h2&gt;

&lt;p&gt;In my experience it's rarely deliberate. The usual causes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;A hard-coded snippet.&lt;/strong&gt; Someone pasted the Google tag or Meta Pixel into the theme header years ago, and the banner added later has no control over it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A plugin or app that loads its own pixel.&lt;/strong&gt; Many e-commerce and marketing plugins add tracking scripts on their own, outside the banner's control.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tag Manager triggers.&lt;/strong&gt; Tags set to fire on "All Pages" run whatever the banner says, unless the triggers or Consent Mode settings are set up for consent.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pages the banner setup never covered.&lt;/strong&gt; The home page is fine, but checkout, a landing page or an old template loads trackers directly.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The fix, in principle
&lt;/h2&gt;

&lt;p&gt;A tracker that needs consent shouldn't be able to run until consent exists. The standard way is to make the script inert, then switch it on when the visitor agrees:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="c"&gt;&amp;lt;!-- Inert: the browser won't run a script with an unknown type --&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"text/plain"&lt;/span&gt; &lt;span class="na"&gt;data-consent=&lt;/span&gt;&lt;span class="s"&gt;"marketing"&lt;/span&gt;
        &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://connect.facebook.net/en_US/fbevents.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;

&lt;span class="nt"&gt;&amp;lt;script&amp;gt;&lt;/span&gt;
  &lt;span class="c1"&gt;// Call this from your banner's "Accept" handler.&lt;/span&gt;
  &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;grantConsent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;category&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nb"&gt;document&lt;/span&gt;
      &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;querySelectorAll&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;script[type="text/plain"][data-consent="&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;category&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;"]&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
      &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;forEach&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;function &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;inert&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;live&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;createElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;script&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
        &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;inert&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="nx"&gt;live&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;src&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;inert&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="nx"&gt;live&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;textContent&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;inert&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;textContent&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="nx"&gt;inert&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;replaceWith&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;live&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
      &lt;span class="p"&gt;});&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Most consent tools use a version of this pattern (their own attribute names), and on WordPress, Shopify, Wix and Squarespace it's normally a setting rather than code. Two things to watch:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Order matters.&lt;/strong&gt; If an inline snippet calls a library (&lt;code&gt;fbq(...)&lt;/code&gt;, &lt;code&gt;gtag(...)&lt;/code&gt;), the library's queue stub has to exist first. That's why Google's own snippet defines &lt;code&gt;gtag()&lt;/code&gt; before the library loads.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Google Consent Mode&lt;/strong&gt; is different. In its advanced mode, Google's tags load before consent and send cookieless pings by design. Decide which mode you're using on purpose.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After any fix, run the DevTools check again in a fresh Incognito window. A fix you haven't re-checked is a guess.&lt;/p&gt;

&lt;h2&gt;
  
  
  Doing this at scale
&lt;/h2&gt;

&lt;p&gt;Checking one page by hand is fine. Checking every page, after every plugin update, is where it breaks down, and that's why I built &lt;strong&gt;&lt;a href="https://privacyfixed.com" rel="noopener noreferrer"&gt;PrivacyFixed&lt;/a&gt;&lt;/strong&gt;. It loads a site in a real browser as a first-time visitor, lists every outside company contacted before the banner is answered, checks whether a Reject is respected, and gives step-by-step fixes for WordPress, Shopify, Wix and Squarespace. Three free scans a day, no sign-up.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4f6twpcgf2fx9bobz214.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4f6twpcgf2fx9bobz214.png" alt=" " width="800" height="364"&gt;&lt;/a&gt;&lt;br&gt;
But you don't need it to start. Open Incognito, open the Network tab, and look. Most people are surprised by what's already there.&lt;/p&gt;

&lt;p&gt;What's the worst thing you've found loading before consent? I'd like to hear it in the comments.&lt;/p&gt;

</description>
      <category>privacy</category>
      <category>webdev</category>
      <category>javascript</category>
      <category>gdpr</category>
    </item>
  </channel>
</rss>
