Migrating from Google Fonts

For the supported parameter subset, this is now a real hostname swap: change fonts.googleapis.com to fonts.wayscloud.eu and the same URL produces equivalent CSS from EU infrastructure with no tracking. This is not full Google Fonts parity — only the parameters listed below are supported. Anything else returns a 400 error explaining what to use instead.

Don’t know which fonts your site uses? Paste a URL into Inspect a site. It detects loaded font families and weights, marks which are on WAYSCloud Fonts, and gives you a ready-to-paste replacement snippet.

The simple case

Before:

<link
  href="https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap"
  rel="stylesheet"
/>

After:

<link
  href="https://fonts.wayscloud.eu/css2?family=Inter:wght@400;700&display=swap"
  rel="stylesheet"
/>

For most sites that use the supported subset, that is the entire migration.

Supported parameters

ParameterExampleNotes
family=family=InterDisplay name, + for spaces. Resolves case-insensitively to a catalog slug.
Multiple family=family=Inter&family=Source+Serif+4Repeated parameter; output preserves request order.
wght@family=Inter:wght@400;500;700Semicolon-separated integer weights. Each must exist in the family.
ital,wght@family=Inter:ital,wght@0,400;1,4000,N is upright at weight N; 1,N is italic. Each pair must exist.
display=display=swapauto, block, swap, fallback, optional.

A request that names a family not in the catalog, requests a weight the family does not carry, or requests italic for a weight without italic, returns 400 with a CSS-comment body naming the missing combination.

Parameters NOT supported

The CSS API rejects the following with HTTP 400 and a CSS-comment body. The exact response strings:

ParameterStatusResponse body
subset=Reserved/* WAYSCloud Fonts: parameter "subset" reserved for future use */
v=Reserved/* WAYSCloud Fonts: parameter "v" reserved for future use */
text=Reserved/* WAYSCloud Fonts: parameter "text" reserved for future use */
effect=Unsupported/* WAYSCloud Fonts: parameter "effect" not supported */
Any otherUnrecognised/* WAYSCloud Fonts: parameter "<name>" not recognized */

If your existing Google Fonts URL uses any of these, the request will fail. For most sites this means dropping &subset=... if it’s present (browsers handle subset selection via unicode-range in the default response already). text= (on-demand glyph subsetting) and effect= have no migration path on WAYSCloud yet — handle them upstream of the CSS API or stay on Google Fonts for those specific use cases.

What stays the same

What is different