Google Fonts and GDPR: 3 in 8 Polish sites load them

Three in eight Polish homepages load fonts from Google's servers, and few visibly wait for consent. On WordPress, a blocking load goes with a slower LCP.

Reading time: 10 min readPublished:

38% of the popular Polish homepages we read, about three in eight, load fonts from Google's servers rather than their own, and 30% do it with a stylesheet that holds up rendering. Of the 7,785 we read, we could see only 21 wait for the visitor's consent first, a floor rather than an exact count. On WordPress sites it shows in loading: those with a blocking Google Fonts stylesheet have a median phone LCP 178ms slower than those without Google Fonts. On other sites we found no difference.

We read the homepages of every .pl site in the Tranco list of popular sites (opens in a new tab) that answered with HTML, the same sample as our studies of third-party scripts, CDN market share in Poland and who draws the cookie consent banner, and looked each site up in the Chrome UX Report (opens in a new tab), Google's record of how fast sites load for real Chrome users.

.pl homepages read
7,785
load fonts from Google's servers
38%
with a render-blocking stylesheet
30%
visibly wait for consent first
21

What is Google Fonts and how do sites load it?

Google Fonts (opens in a new tab) is Google's free library of web fonts. The usual way to use it is a line Google gives you to paste into the page: a <link> to a stylesheet on fonts.googleapis.com, which in turn points the browser at the font files on fonts.gstatic.com. Every visit then opens connections to two Google domains, and the visitor's browser sends Google its IP address along with the request.

We sorted every homepage by the way it asks Google for fonts, first match wins:

  • Render-blocking: a stylesheet link or an @import. The browser waits for the CSS before it draws anything.
  • Not blocking: the stylesheet loaded with the media="print" trick or a preload, @font-face rules pointing straight at the font files, a preloaded font file, or a script such as Web Font Loader.
  • After consent: the same, held back by a consent platform until the visitor agrees.
  • Only a preconnect: a hint to connect to Google's font hosts, and no font request we could see.

How many Polish sites load Google Fonts?

2,352 homepages (30%) load Google Fonts with a render-blocking stylesheet and another 579 (7.4%) without blocking. Counting the homepages that only connect to Google, 41% of them have the browser contact Google's font servers.

The most popular sites use Google Fonts less: 24% of the 100 most popular .pl sites and 32% of the next 900, against 39% of the rest. The top 100 and the next 900 aren't clearly apart from each other; both are apart from the rest.

Public administration is no exception. Of the 84 gov.pl homepages in the sample, 31 load Google Fonts (37%), most of them with a blocking stylesheet. Online shops load them a little more often than other sites.

Public administration sites load Google Fonts about as often as everyone else

Share of .pl homepages loading fonts from Google's servers, by kind of site · 95% intervals

Online shops42%
Public administration (gov.pl)37%
Other sites36%
Source: Outofplace census, 24 Sept 2026Download CSVDownload PNG
Show the data
ItemValue95% intervaln
Online shops42%40%–44%2,172
Public administration (gov.pl)37%27%–48%84
Other sites36%35%–37%5,529
Public administration sites load Google Fonts about as often as everyone else. Share of .pl homepages loading fonts from Google's servers, by kind of site · 95% intervals

The chart as an image, free to reuse under CC BY 4.0 with credit to Outofplace and a link to this page.

Half of WordPress sites load Google Fonts

The shares spread wider by software than by kind of site. 54% of WordPress sites that aren't shops load Google Fonts, and about half of WooCommerce, PrestaShop and Shoper shops, against 24% on Shopify and 26% on IdoSell. We didn't record which theme each site runs, so the data can't say why.

Half of WordPress sites load Google Fonts; a quarter of Shopify and IdoSell shops do

Share of .pl homepages loading fonts from Google's servers, by software · WordPress counts sites that aren't shops · 95% intervals

WordPress (not a shop)54%
WooCommerce51%
PrestaShop49%
Shoper48%
Other shops38%
Magento32%
Other sites30%
IdoSell26%
Shopify24%
Source: Outofplace census, 24 Sept 2026; platform from our ecommerce classifierDownload CSVDownload PNG
Show the data
ItemValue95% intervaln
WordPress (not a shop)54%52%–57%1,389
WooCommerce51%46%–56%384
PrestaShop49%45%–53%557
Shoper48%42%–55%227
Other shops38%34%–42%474
Magento32%26%–38%202
Other sites30%29%–32%4,208
IdoSell26%20%–32%217
Shopify24%17%–32%127
Half of WordPress sites load Google Fonts; a quarter of Shopify and IdoSell shops do. Share of .pl homepages loading fonts from Google's servers, by software · WordPress counts sites that aren't shops · 95% intervals

The chart as an image, free to reuse under CC BY 4.0 with credit to Outofplace and a link to this page.

Shoper stands out in another way: 47% of Shoper shops carry a preconnect to Google's font hosts without any Google Fonts request we could see; we didn't check whether Shoper's templates add it. A preconnect only opens a connection, but that is still a request to Google with the visitor's IP address.

Which Google Fonts do Polish sites use?

Roboto and Open Sans, each on about a fifth of the homepages loading Google Fonts, followed by Poppins, Montserrat and Lato, close to each other. 122 families appear on at least five homepages each. Of the homepages with a Google Fonts CSS URL, the median asks for one family, but 22% ask for three or more.

Roboto and Open Sans are on a fifth of the sites loading Google Fonts each

Share of .pl homepages loading Google Fonts that ask for each family, the 15 most common · 95% intervals

Roboto22%
Open Sans21%
Poppins13%
Montserrat12%
Lato11%
Inter7.7%
Roboto Slab5%
Oswald3.9%
Roboto Condensed3.8%
Raleway3.6%
Playfair Display3.3%
Rubik3.1%
Source Sans Pro2.5%
Material Icons2.4%
Ubuntu2.2%
Source: Outofplace census, 24 Sept 2026Download CSVDownload PNG
Show the data
ItemValue95% intervaln
Roboto22%20%–23%2,931
Open Sans21%20%–22%2,931
Poppins13%12%–14%2,931
Montserrat12%10%–13%2,931
Lato11%9.9%–12%2,931
Inter7.7%6.8%–8.7%2,931
Roboto Slab5%4.3%–5.9%2,931
Oswald3.9%3.2%–4.6%2,931
Roboto Condensed3.8%3.2%–4.5%2,931
Raleway3.6%3%–4.4%2,931
Playfair Display3.3%2.7%–4%2,931
Rubik3.1%2.5%–3.8%2,931
Source Sans Pro2.5%2%–3.1%2,931
Material Icons2.4%1.9%–3%2,931
Ubuntu2.2%1.7%–2.8%2,931
Roboto and Open Sans are on a fifth of the sites loading Google Fonts each. Share of .pl homepages loading Google Fonts that ask for each family, the 15 most common · 95% intervals

The chart as an image, free to reuse under CC BY 4.0 with credit to Outofplace and a link to this page.

Many requests are old. 56% of homepages with a Google Fonts URL still use the first version of the API (/css?family=) rather than css2, and 36% make two or more separate requests, often one per family, where one would do. 41% have at least one URL without the display parameter, which leaves the text invisible while the font loads: web.dev's guide to font best practices (opens in a new tab) says that without font-display, Chromium and Firefox block text for up to three seconds.

Do Google Fonts slow down a website?

To see whether it shows, we compared the median 75th-percentile LCP (Largest Contentful Paint, the moment the main content appears) on phones of sites that load Google Fonts in each way against sites that load none.

On WordPress, the gap is clear: 1.99s with a blocking stylesheet against 1.81s without Google Fonts, a difference of 178ms (95% interval 73ms to 292ms). First Contentful Paint is 121ms slower too. 74% of those sites pass LCP on phones, against 79% of WordPress sites without Google Fonts.

On other sites there is no gap: 1.68s against 1.68s. And loading Google Fonts without blocking goes with no slower LCP on either.

On WordPress, a blocking Google Fonts stylesheet goes with a slower LCP; elsewhere it doesn't

Median p75 LCP on phones (the whole site, as CrUX measures it), in seconds, by how the homepage loads Google Fonts · dot: median, line: 95% interval · shading: Google's thresholds · CrUX, 28 days to 22 Sept 2026

WordPress: No Google Fonts1.81s
WordPress: Google Fonts, blocking1.99s
WordPress: Google Fonts, not blocking1.71s
Other sites: No Google Fonts1.68s
Other sites: Google Fonts, blocking1.68s
Other sites: Google Fonts, not blocking1.7s
Source: Chrome UX Report (Google); Outofplace census, 24 Sept 2026Download CSVDownload PNG
Show the data
ItemValueRangen
WordPress: No Google Fonts1.81s1.73s–1.9s636
WordPress: Google Fonts, blocking1.99s1.92s–2.07s568
WordPress: Google Fonts, not blocking1.71s1.61s–1.83s135
Other sites: No Google Fonts1.68s1.66s–1.71s2,906
Other sites: Google Fonts, blocking1.68s1.63s–1.72s1,219
Other sites: Google Fonts, not blocking1.7s1.62s–1.77s362
On WordPress, a blocking Google Fonts stylesheet goes with a slower LCP; elsewhere it doesn't. Median p75 LCP on phones (the whole site, as CrUX measures it), in seconds, by how the homepage loads Google Fonts · dot: median, line: 95% interval · shading: Google's thresholds · CrUX, 28 days to 22 Sept 2026

The chart as an image, free to reuse under CC BY 4.0 with credit to Outofplace and a link to this page.

Among sites with a blocking stylesheet, those asking for three or more families have a slower median LCP than those asking for one: 1.85s against 1.71s, with 1.8s for two families in between. The intervals of neighbouring groups overlap, and the groups mix WordPress and other sites.

Blocking stylesheets with three or more families go with a slower LCP than those with one

Median p75 LCP on phones, in seconds, of sites loading Google Fonts with a render-blocking stylesheet, by families requested · dot: median, line: 95% interval · CrUX, 28 days to 22 Sept 2026

One family1.71s
Two families1.8s
Three or more1.85s
Source: Chrome UX Report (Google); Outofplace census, 24 Sept 2026Download CSVDownload PNG
Show the data
ItemValueRangen
One family1.71s1.66s–1.77s898
Two families1.8s1.73s–1.87s501
Three or more1.85s1.8s–1.94s388
Blocking stylesheets with three or more families go with a slower LCP than those with one. Median p75 LCP on phones, in seconds, of sites loading Google Fonts with a render-blocking stylesheet, by families requested · dot: median, line: 95% interval · CrUX, 28 days to 22 Sept 2026

The chart as an image, free to reuse under CC BY 4.0 with credit to Outofplace and a link to this page.

Is Google Fonts GDPR compliant?

On 20 January 2022 the Munich Regional Court (LG München I, 3 O 17493/20) (opens in a new tab) ruled against a site that passed a visitor's dynamic IP address to Google by embedding Google Fonts. The court held that the IP address is personal data for the site's operator and that there was no legitimate interest under Article 6(1)(f) GDPR, because the fonts can be used without the browser connecting to a Google server at all. It ordered the operator to stop, under a fine of up to €250,000, and to pay the visitor €100 in damages.

That is one German first-instance judgment, not an EU court ruling, and we found no position on Google Fonts from Poland's data protection authority (UODO). It is still the clearest court ruling on the question we could find.

Google's Fonts FAQ (opens in a new tab) (read on 22 October 2026) says the Google Fonts API "does not set or log cookies", that requests include the IP address, the requested URL and HTTP headers such as the user agent and referer, and that Google does not use the data "to create profiles of end users or for targeted advertising". It also says you can host the fonts yourself.

On the Polish web, consent rarely visibly comes into it. We could see 21 homepages hold Google Fonts back until the visitor agrees (one of the eight we checked by hand turned out not to); 2,931 load them with no consent gate our rules detect. Our rules miss some ways of gating a load (below), so the first number is a floor. Asking for consent is one way to deal with this; hosting the fonts yourself avoids the question entirely.

Self-hosted fonts vs Google Fonts: which is faster?

The old argument for Google's servers was a shared cache: a visitor who had Roboto from one site wouldn't download it again on the next. In Chrome, that ended in 2020. Chrome has partitioned its HTTP cache since Chrome 86 (opens in a new tab), keyed by the site the visitor is on, and Google's own announcement names fonts among the resources that may now be downloaded more often.

What's left for Google's servers is good compression, subsetting and a fast CDN; what's left against them is two extra connections before the text can appear. web.dev's guide to font best practices calls the comparison "less clear cut" than it used to be, and recommends that sites using a third-party font service at least preconnect to it. Of the homepages linking Google Fonts, 47% preconnect to fonts.gstatic.com, and 142 of those leave out crossorigin, which web.dev says the font connection needs, so the browser opens a second one anyway.

Many sites already host fonts themselves: 26% of homepages serve a font file from their own domain, and 346 carry the trace of a self-hosting plugin or tool, such as Elementor's local fonts or webfonts-helper paths.

How to self-host Google Fonts

  1. List what you load

    Open the homepage in Chrome with DevTools, filter the Network panel to Font and CSS, and note every request to fonts.googleapis.com and fonts.gstatic.com. Check the theme, page builder and plugins too: they often add their own.

  2. Download only what you use

    Get the WOFF2 files of the families, weights and styles the site really shows, with the latin-ext subset for Polish characters. Every weight is a separate file; most sites need two to four.

  3. Serve them from your domain

    Put the files on your own server and write @font-face rules pointing at them, with font-display: swap so the text shows in a fallback font while the file loads. Preload the one or two files the first screen needs.

  4. Remove every link to Google

    Delete the <link>, @import and preconnect lines for Google's font hosts. On WordPress, a self-hosting plugin or the theme's "load fonts locally" option does this; check the page source afterwards, because a plugin may still add its own.

  5. Measure again after four weeks

    Look up the site in PageSpeed Insights (opens in a new tab). The field data at the top covers a rolling 28 days, so the change shows in full after four weeks.

If you keep Google's servers, at least add display=swap to every URL, merge the families into one css2 request, and preconnect to fonts.gstatic.com with crossorigin.

Share of .pl homepages loading fonts from Google's servers, and with a render-blocking stylesheet, by kind of site and software
SitesHomepagesLoad from GoogleOf all, blocking
Other sites5,52936%30%
Other sites4,20830%25%
Online shops2,17242%32%
WordPress (not a shop)1,38954%45%
PrestaShop55749%41%
Other shops47438%30%
WooCommerce38451%39%
Shoper22748%22%
IdoSell21726%24%
Magento20232%27%
Shopify12724%17%
Public administration (gov.pl)8437%30%
Download CSV

How we measured

How we checked the classification

We drew 8 homepages from each mode, plus 8 classified as not loading Google Fonts whose HTML still names a Google font host, in a fixed random order, and read the HTML behind every one. 36 of the 40 were right, all 8 render-blocking ones among them. The misses: a form app's template stored in a JSON config, Web Font Loader's own code inlined with no families, a script that skips Lighthouse rather than waiting for consent, and a stylesheet a script copies out of a <noscript> block. An earlier sample shaped the rules for lazy and consent-gated links and isn't counted.

What this data can't tell you

We saw the homepage only, as its HTML arrived, and ran none of it. Fonts requested from a site's own CSS files or added by scripts and widgets are invisible, so the shares here are floors. A homepage with only a preconnect may load Google Fonts from CSS we didn't read, or may carry a leftover hint. Homepages longer than 1 MiB were cut there (331 of them). The field data covers every page of a site, not just the homepage. And every speed difference here is a correlation: sites that load Google Fonts also differ in theme, hosting and build.

Is Google Fonts GDPR compliant?

It depends on how a site uses it. In January 2022 the Munich Regional Court ruled that a site which passed a visitor's IP address to Google by embedding Google Fonts, without consent, broke the GDPR, because the fonts can be used without connecting to Google at all (LG München I, 3 O 17493/20). That is one German first-instance judgment, not an EU ruling, and we found no position from the Polish data protection authority. Google says the Fonts API sets no cookies and doesn't use the data to profile visitors. Of the Polish homepages we read, we could see 21 wait for consent before loading Google Fonts, a floor since our rules miss some ways of gating a load; 2,931 load them with no consent gate we could detect.

Does Google Fonts collect IP addresses?

Google receives them. Its Fonts FAQ says requests to the Fonts API include the visitor's IP address, the requested URL and HTTP headers such as the user agent and referer, and that Google does not use this data to build profiles of end users or for targeted advertising. A preconnect alone already opens a connection to Google: 41% of Polish homepages make the browser contact Google's font servers.

Do Google Fonts slow down a website?

A render-blocking Google Fonts stylesheet can. On Polish WordPress sites, those that load one have a median phone LCP 178ms slower than those that load no Google Fonts. On other sites we found no difference, and loading the stylesheet without blocking showed no difference anywhere. It's a correlation, not proof that the fonts cause it.

Self-hosted fonts vs Google Fonts: which is faster?

Usually self-hosting, though Google's own web.dev guide calls it "less clear cut". Since Chrome 86 (2020) the browser's cache is partitioned by site, so a font cached on one site is downloaded again on the next, and the old argument for a shared CDN is gone. Self-hosting saves the connections to two Google domains; Google's servers may still compress and subset better than yours.

How do I self-host Google Fonts?

Download the font files (WOFF2) of the families and weights you use, put them on your own server, write @font-face rules with font-display: swap pointing at them, preload the one or two files the first screen needs, and remove every link, @import and preconnect to fonts.googleapis.com and fonts.gstatic.com. On WordPress, a self-hosting plugin or your theme's local fonts option does the same.

Can you self-host Google Fonts?

Yes. Google's Fonts FAQ says you can host the fonts yourself; they are published under open-source licences. Many Polish sites already do: we found self-hosting plugins' traces on hundreds of homepages.

Further reading

LG München I, judgment of 20 January 2022, 3 O 17493/20 (opens in a new tab)The Munich Regional Court's ruling on Google Fonts and the GDPR, in German.gesetze-bayern.de
Google Fonts FAQ (opens in a new tab)Google on what the Fonts API logs, cookies, and hosting the fonts yourself.fonts.google.com
Best practices for fonts (opens in a new tab)web.dev on font-display, preconnect with crossorigin, and self-hosting versus a font service.web.dev
Gaining security and privacy by partitioning the cache (opens in a new tab)Why a font cached on one site is downloaded again on the next, since Chrome 86.developer.chrome.com
PerformanceThird-party scripts on the Polish web: who loads whatOur study of the same sample: which third-party scripts Polish homepages load.

Tell us what we’re building.

We reply within one business day.