Shapeusto logo
30 Jul 2025
Update: 10 Mar 2026

Self-Host Google Fonts with Google Fonts Helper

Self-hosting fonts means serving font files directly from your own server instead of loading them from Google CDN. It improves performance, protects user privacy, and keeps your site GDPR-compliant — especially important in Europe.

Why Self-Host Google Fonts?

  • GDPR compliance — No user IP is sent to Google servers on page load.
  • Faster load times — One less external DNS lookup and connection.
  • Full control — Fonts work even if Google CDN is down or blocked.

What is Google Fonts Helper?

Google Fonts Helper is a free tool by Mario Ranftl that lets you download any Google Font with the correct @font-face CSS — ready to paste. No manual work needed.

Tool: https://gwfh.mranftl.com/fonts

Step-by-Step Guide

Step 1: Choose your font

Go to gwfh.mranftl.com/fonts and search for the font you want — e.g. Inter, Roboto, or Nunito.

Step 2: Select styles and subsets

Pick only the font weights you actually use (e.g. 400, 600, 700). Choose the correct subset for your language — e.g. latin-ext for Central European languages. Avoid selecting all variants to keep file size small.

Step 3: Set the folder path

In the Customize folder prefix field, enter the path where you will upload the font files. For WordPress:

/wp-content/themes/your-theme/fonts/

Step 4: Download and upload

Click Download files to get a ZIP with font formats (woff2, woff). Upload the files to the folder you specified via FTP or your hosting file manager.

Step 5: Copy and paste the CSS

Copy the generated @font-face CSS from the tool and paste it into your stylesheet or WordPress custom CSS field (e.g. Breakdance Settings or Elementor Custom CSS).

@font-face{ 
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url('/wp-content/themes/your-theme/fonts/inter-regular.woff2') format('woff2'),
       url('/wp-content/themes/your-theme/fonts/inter-regular.woff') format('woff');
  font-display: swap;
 }

Pro Tips

  • Always use font-display: swap — prevents invisible text during font loading.
  • Prefer woff2 — most compressed, supported by all modern browsers.
  • Remove all Google Fonts CDN links from your theme or plugin settings after self-hosting.
  • Use browser DevTools (Network tab → filter by Font) to verify fonts load from your own domain.
Matt Caine
- Founder of Shapeusto

Get it done.

Pause or cancel any time

If you don't need our services, there's no reason to pay. Just pause your subscription.

48 hour average delivery

We work incredibly fast. We can create most tasks within 48 hours.

Unlimited requests

Simply enter the number of tasks you need to solve, and we'll take care of all of them.

Unlimited users

An unlimited number of team members can add tasks to us.
Pause or cancel anytime

Pause or cancel anytime

If you don't need our services, there's no reason to pay. Just pause your subscription.
48 hour average delivery

48 hour average delivery

We work incredibly fast. We can create most tasks within 48 hours.
Unlimited users

Unlimited users

An unlimited number of team members can add tasks to us.
Unlimited requests

Unlimited requests

Simply enter the number of tasks you need to solve, and we'll take care of all of them.