Best Fonts for Websites: 30 Free Google Fonts Previewed in Real Layouts | How-to Guide

The best fonts for websites are readable at small sizes, load fast and suit the brand: Inter or Geist for product sites, Source Serif 4 or Newsreader for reading, Rubik or Nunito for local businesses. Here are 30 free Google Fonts shown live, with licences, variable axes and copy-paste CSS.

These are 30 free fonts from Google Fonts that hold up on real websites, sorted by the job they do best. Each one is shown below in a heading, a paragraph and a button, with its licence, whether it is a variable font, the weights it ships, a fallback stack and a copy-ready snippet. The details were checked against the Google Fonts catalog and the licence files in the Google Fonts repository in October 2026.

Quick picks

Try your own text

Type below to replace the sample text in every preview on this page. The fonts load from Google Fonts when you open this section; until then each preview shows its fallback stack, which is also what visitors see for a moment while a web font downloads.

All 30 fonts at a glance

FontBest forStyleVariableWeightsLicence
InterSaaS and product interfacesSans SerifYes100 to 900OFL 1.1
GeistSaaS and product interfacesSans SerifYes100 to 900OFL 1.1
DM SansSaaS and product interfacesSans SerifYes100 to 1000OFL 1.1
ManropeSaaS and product interfacesSans SerifYes200 to 800OFL 1.1
Plus Jakarta SansSaaS and product interfacesSans SerifYes200 to 800OFL 1.1
IBM Plex SansSaaS and product interfacesSans SerifYes100 to 700OFL 1.1
FigtreeSaaS and product interfacesSans SerifYes300 to 900OFL 1.1
Space GroteskSaaS and product interfacesSans SerifYes300 to 700OFL 1.1
MerriweatherEditorial, blogs and long readingSerifYes300 to 900OFL 1.1
LoraEditorial, blogs and long readingSerifYes400 to 700OFL 1.1
Playfair DisplayEditorial, blogs and long readingSerifYes400 to 900OFL 1.1
Source Serif 4Editorial, blogs and long readingSerifYes200 to 900OFL 1.1
Libre BaskervilleEditorial, blogs and long readingSerifYes400 to 700OFL 1.1
EB GaramondEditorial, blogs and long readingSerifYes400 to 800OFL 1.1
FrauncesEditorial, blogs and long readingSerifYes100 to 900OFL 1.1
NewsreaderEditorial, blogs and long readingSerifYes200 to 800OFL 1.1
PoppinsLocal business and friendly brandsSans SerifNo100 to 900OFL 1.1
MontserratLocal business and friendly brandsSans SerifYes100 to 900OFL 1.1
NunitoLocal business and friendly brandsSans SerifYes200 to 1000OFL 1.1
RubikLocal business and friendly brandsSans SerifYes300 to 900OFL 1.1
Work SansLocal business and friendly brandsSans SerifYes100 to 900OFL 1.1
OutfitLocal business and friendly brandsSans SerifYes100 to 900OFL 1.1
RobotoWorkhorse and multilingualSans SerifYes100 to 900OFL 1.1
Open SansWorkhorse and multilingualSans SerifYes300 to 800OFL 1.1
LatoWorkhorse and multilingualSans SerifNo100 to 900OFL 1.1
Noto SansWorkhorse and multilingualSans SerifYes100 to 900OFL 1.1
Source Sans 3Workhorse and multilingualSans SerifYes200 to 900OFL 1.1
OswaldHeadlines and codeSans SerifYes200 to 700OFL 1.1
ArchivoHeadlines and codeSans SerifYes100 to 900OFL 1.1
JetBrains MonoHeadlines and codeMonospaceYes100 to 800OFL 1.1

All 30 are released under the SIL Open Font License 1.1, which allows commercial use, embedding on websites and self-hosting, and lets you modify the fonts as long as you do not sell the font files on their own or reuse the reserved font names for modified versions. A small number of Google Fonts families use other open licences: some are under the Apache License 2.0 (for example Permanent Marker and Special Elite) and the Ubuntu family uses the Ubuntu Font Licence. Always check the licence shown on a family's page on fonts.google.com before you ship it.

Showing all 30

SaaS and product interfaces

Product sites and app screens need type that stays clear at 13 to 16 pixels, has tabular numbers for prices and tables, and comes in enough weights for buttons, labels and headings.

Inter

Sans Serif · Rasmus Andersson

Inter sets this headline

A neutral sans with a tall x-height; holds up in dense dashboards, tables and settings screens. Its optical size axis adjusts letter shapes for large headings.

Start free trial
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forSaaS and product interfaces
VariableYes: optical size 14 to 32, weight 100 to 900
Weights100 to 900 (any value in between), with italics
Fallback stack"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Inter:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Geist

Sans Serif · Andrés Briganti, Mateo Zaragoza, Guillermo Rauch, Evil Rabbit, José Rago, Facundo Santana

Geist sets this headline

Crisp and slightly technical, with tight default spacing. Suits developer tools and product sites that want a clean, modern voice.

Start free trial
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forSaaS and product interfaces
VariableYes: weight 100 to 900
Weights100 to 900 (any value in between), with italics
Fallback stack"Geist", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Geist:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Geist", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

DM Sans

Sans Serif · Colophon Foundry

DM Sans sets this headline

Low contrast and geometric with a friendly feel. Its optical size axis lets one family cover small labels and big hero headlines.

Start free trial
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forSaaS and product interfaces
VariableYes: optical size 9 to 40, weight 100 to 1000
Weights100 to 1000 (any value in between), with italics
Fallback stack"DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=DM+Sans:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Manrope

Sans Serif · Mikhail Sharanda

Manrope sets this headline

A semi-condensed modern sans; looks good set large and bold in hero sections while staying readable in body copy.

Start free trial
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forSaaS and product interfaces
VariableYes: weight 200 to 800
Weights200 to 800 (any value in between), no italics
Fallback stack"Manrope", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Manrope:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Plus Jakarta Sans

Sans Serif · Tokotype

Plus Jakarta Sans sets this headline

Rounded geometric shapes with a contemporary look. A common pick for startup landing pages that want warmth without looking playful.

Start free trial
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forSaaS and product interfaces
VariableYes: weight 200 to 800
Weights200 to 800 (any value in between), with italics
Fallback stack"Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

IBM Plex Sans

Sans Serif · Mike Abbink, Bold Monday

IBM Plex Sans sets this headline

Engineered and a little mechanical, with distinctive details. Fits technical, B2B and enterprise products; the wider Plex family adds matching serif and mono styles.

Start free trial
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forSaaS and product interfaces
VariableYes: width 75 to 100, weight 100 to 700
Weights100 to 700 (any value in between), with italics
Fallback stack"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Figtree

Sans Serif · Erik Kennedy

Figtree sets this headline

Clean and approachable geometric sans with open letters. Works for consumer apps and onboarding screens.

Start free trial
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forSaaS and product interfaces
VariableYes: weight 300 to 900
Weights300 to 900 (any value in between), with italics
Fallback stack"Figtree", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Figtree:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Figtree", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Space Grotesk

Sans Serif · Florian Karsten

Space Grotesk sets this headline

A grotesque with quirky, monospace-inspired details. Best for headlines on tech and crypto-style brands; pair with a calmer body font.

Start free trial
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forSaaS and product interfaces
VariableYes: weight 300 to 700
Weights300 to 700 (any value in between), no italics
Fallback stack"Space Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Space+Grotesk:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Space Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Editorial, blogs and long reading

Serif and text faces for articles, newsletters and publishers. Look for comfortable body sizes, real italics and a clear difference between heading and text weights.

Merriweather

Serif · Sorkin Type

Merriweather sets this headline

Sturdy serif with a large x-height that reads well on screens. Now variable, including width and optical size axes.

Read the issue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forEditorial, blogs and long reading
VariableYes: optical size 18 to 144, width 87 to 112, weight 300 to 900
Weights300 to 900 (any value in between), with italics
Fallback stack"Merriweather", Georgia, "Times New Roman", serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Merriweather:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Merriweather", Georgia, "Times New Roman", serif;

Lora

Serif · Cyreal

Lora sets this headline

Moderate-contrast serif with calligraphic roots. A balanced choice for blog body text and memoir-style personal sites.

Read the issue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forEditorial, blogs and long reading
VariableYes: weight 400 to 700
Weights400 to 700 (any value in between), with italics
Fallback stack"Lora", Georgia, "Times New Roman", serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Lora:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Lora", Georgia, "Times New Roman", serif;

Playfair Display

Serif · Claus Eggers Sørensen

Playfair Display sets this headline

High-contrast display serif. Made for large headings; at paragraph sizes its thin strokes get fragile, so pair it with a sturdier body font.

Read the issue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forEditorial, blogs and long reading
VariableYes: weight 400 to 900
Weights400 to 900 (any value in between), with italics
Fallback stack"Playfair Display", Georgia, "Times New Roman", serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Playfair+Display:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Playfair Display", Georgia, "Times New Roman", serif;

Source Serif 4

Serif · Frank Grießhammer

Source Serif 4 sets this headline

A practical text serif with an optical size axis, so small captions and large titles each get appropriate letter shapes.

Read the issue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forEditorial, blogs and long reading
VariableYes: optical size 8 to 60, weight 200 to 900
Weights200 to 900 (any value in between), with italics
Fallback stack"Source Serif 4", Georgia, "Times New Roman", serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Source+Serif+4:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Source Serif 4", Georgia, "Times New Roman", serif;

Libre Baskerville

Serif · Impallari Type

Libre Baskerville sets this headline

A Baskerville-style serif tuned for body text on screens, with a wide, open feel. Suits law firms, publishers and classic brands.

Read the issue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forEditorial, blogs and long reading
VariableYes: weight 400 to 700
Weights400 to 700 (any value in between), with italics
Fallback stack"Libre Baskerville", Georgia, "Times New Roman", serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Libre+Baskerville:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Libre Baskerville", Georgia, "Times New Roman", serif;

EB Garamond

Serif · Georg Duffner, Octavio Pardo

EB Garamond sets this headline

A Garamond revival with an old-style, bookish look. Best for literary sites, wedding stationery-style pages and cultural institutions.

Read the issue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forEditorial, blogs and long reading
VariableYes: weight 400 to 800
Weights400 to 800 (any value in between), with italics
Fallback stack"EB Garamond", Georgia, "Times New Roman", serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=EB+Garamond:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "EB Garamond", Georgia, "Times New Roman", serif;

Fraunces

Serif · Undercase Type, Phaedra Charles, Flavia Zimbardi

Fraunces sets this headline

A soft, characterful display serif with optical size plus 'softness' and 'wonk' axes. Gives food, craft and lifestyle brands personality in headlines.

Read the issue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forEditorial, blogs and long reading
VariableYes: softness 0 to 100, wonky 0 to 1, optical size 9 to 144, weight 100 to 900
Weights100 to 900 (any value in between), with italics
Fallback stack"Fraunces", Georgia, "Times New Roman", serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Fraunces:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Fraunces", Georgia, "Times New Roman", serif;

Newsreader

Serif · Production Type

Newsreader sets this headline

Designed for news and long reading, with an optical size axis. A good default for magazine layouts and newsletters.

Read the issue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forEditorial, blogs and long reading
VariableYes: optical size 6 to 72, weight 200 to 800
Weights200 to 800 (any value in between), with italics
Fallback stack"Newsreader", Georgia, "Times New Roman", serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Newsreader:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Newsreader", Georgia, "Times New Roman", serif;

Local business and friendly brands

For restaurants, salons, trades and shops: legible from a phone at arm's length, warm without being childish, and bold enough for a phone-number button.

Poppins

Sans Serif · Indian Type Foundry, Jonny Pinhorn, Ninad Kale

Poppins sets this headline

Geometric sans with near-circular rounds. Very common on small business sites; bold weights make clear buttons and prices. Static files only, so load just the weights you use.

Book a visit
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forLocal business and friendly brands
VariableNo (static files)
Weights100 to 900 (100, 200, 300, 400, 500, 600, 700, 800, 900), with italics
Fallback stack"Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap" rel="stylesheet">

/* CSS */
font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Montserrat

Sans Serif · Julieta Ulanovsky, Sol Matas, Juan Pablo del Peral, Jacques Le Bailly

Montserrat sets this headline

Wide geometric sans inspired by urban signage. Strong in uppercase headings and navigation; use a narrower font for long paragraphs.

Book a visit
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forLocal business and friendly brands
VariableYes: weight 100 to 900
Weights100 to 900 (any value in between), with italics
Fallback stack"Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Montserrat:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Nunito

Sans Serif · Vernon Adams, Cyreal, Jacques Le Bailly

Nunito sets this headline

Rounded terminals give a soft, friendly tone. Fits childcare, pet services, bakeries and health practices.

Book a visit
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forLocal business and friendly brands
VariableYes: weight 200 to 1000
Weights200 to 1000 (any value in between), with italics
Fallback stack"Nunito", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Nunito:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Nunito", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Rubik

Sans Serif · Hubert and Fischer, Meir Sadan, Cyreal, Daniel Grumer, Omaima Dajani

Rubik sets this headline

Slightly rounded corners and sturdy shapes. Reads well in short bursts such as menus, service lists and price cards.

Book a visit
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forLocal business and friendly brands
VariableYes: weight 300 to 900
Weights300 to 900 (any value in between), with italics
Fallback stack"Rubik", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Rubik:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Rubik", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Work Sans

Sans Serif · Wei Huang

Work Sans sets this headline

A grotesque loosely based on early English and German styles. Its middle weights are tuned for screen text at medium sizes and its extreme weights for display, which makes it a good all-rounder for service businesses.

Book a visit
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forLocal business and friendly brands
VariableYes: weight 100 to 900
Weights100 to 900 (any value in between), with italics
Fallback stack"Work Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Work+Sans:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Work Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Outfit

Sans Serif · Smartsheet Inc, Rodrigo Fuenzalida

Outfit sets this headline

Clean geometric sans with a modern, branded look. Works for gyms, studios and agencies that want something less familiar than Poppins.

Book a visit
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forLocal business and friendly brands
VariableYes: weight 100 to 900
Weights100 to 900 (any value in between), no italics
Fallback stack"Outfit", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Outfit:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Outfit", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Workhorse and multilingual

Families with broad language support and very wide familiarity. Choose these when the site must cover many languages or when neutrality matters more than character.

Roboto

Sans Serif · Christian Robertson, ParaType, Font Bureau

Roboto sets this headline

Long the system font on Android, and a neutral grotesque; safe for apps and forms. Variable with weight and width axes.

Continue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forWorkhorse and multilingual
VariableYes: width 75 to 100, weight 100 to 900
Weights100 to 900 (any value in between), with italics
Fallback stack"Roboto", system-ui, -apple-system, "Segoe UI", Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Roboto:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Roboto", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;

Open Sans

Sans Serif · Steve Matteson

Open Sans sets this headline

Humanist sans with open letter shapes and a large character set. Readable at small sizes; a dependable choice for content-heavy sites.

Continue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forWorkhorse and multilingual
VariableYes: width 75 to 100, weight 300 to 800
Weights300 to 800 (any value in between), with italics
Fallback stack"Open Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Open Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Lato

Sans Serif · Łukasz Dziedzic

Lato sets this headline

Semi-rounded humanist sans that feels warm in body text. Static files only, in five weights with italics.

Continue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forWorkhorse and multilingual
VariableNo (static files)
Weights100 to 900 (100, 300, 400, 700, 900), with italics
Fallback stack"Lato", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Lato:wght@400;700&display=swap" rel="stylesheet">

/* CSS */
font-family: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Noto Sans

Sans Serif · Google

Noto Sans sets this headline

Part of the Noto project, which aims to support every script with matching designs. The pick when the site needs many languages.

Continue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forWorkhorse and multilingual
VariableYes: width 62.5 to 100, weight 100 to 900
Weights100 to 900 (any value in between), with italics
Fallback stack"Noto Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Noto Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Source Sans 3

Sans Serif · Paul D. Hunt

Source Sans 3 sets this headline

Clear humanist sans originally designed for user interfaces. Pairs naturally with Source Serif 4.

Continue
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forWorkhorse and multilingual
VariableYes: weight 200 to 900
Weights200 to 900 (any value in between), with italics
Fallback stack"Source Sans 3", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Source Sans 3", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Headlines and code

Specialist families: condensed display faces for impact and a monospace for code samples and technical details.

Oswald

Sans Serif · Vernon Adams, Kalapi Gajjar, Cyreal

Oswald sets this headline

A condensed sans reworked from classic gothic styles. Fits a lot of words into one headline line; for posters, sports, events and menus, not body text.

Get tickets
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forHeadlines and code
VariableYes: weight 200 to 700
Weights200 to 700 (any value in between), no italics
Fallback stack"Oswald", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Oswald:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Oswald", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

Archivo

Sans Serif · Omnibus-Type

Archivo sets this headline

A grotesque with a very wide width axis, from condensed to expanded. One family can supply both compact labels and wide, loud headlines.

Get tickets
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forHeadlines and code
VariableYes: width 62 to 125, weight 100 to 900
Weights100 to 900 (any value in between), with italics
Fallback stack"Archivo", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=Archivo:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "Archivo", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

JetBrains Mono

Monospace · JetBrains, Philipp Nurullin, Konstantin Bulenkov

JetBrains Mono sets this headline

A monospace designed for reading code, with a tall x-height and coding ligatures. Use for code blocks, API docs and technical specs.

npm install
LicenceSIL Open Font License 1.1 (free for commercial use, including self-hosting)
Best forHeadlines and code
VariableYes: weight 100 to 800
Weights100 to 800 (any value in between), with italics
Fallback stack"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace
Link and CSS
<link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:[email protected]&display=swap" rel="stylesheet">

/* CSS */
font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

How to load a Google Font

Put these lines in the <head> of your page, before your own stylesheet. The two preconnect hints let the browser open connections to the stylesheet host and the font file host early; the font files are served from a different domain and are fetched in CORS mode, which is why the second hint has crossorigin.

<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:[email protected]&family=Source+Serif+4:ital,wght@0,400..700;1,400..700&display=swap" rel="stylesheet">
body { font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; }
h1, h2, h3 { font-family: "Source Serif 4", Georgia, "Times New Roman", serif; }

Reading the css2 URL

font-display options

ValueWhat visitors seeUse it for
swapFallback text right away, swapped for the web font whenever it loadsMost body and heading text
optionalThe web font only if it is ready almost immediately; otherwise the fallback for this page viewSites where avoiding layout shift matters more than the exact font
fallbackA very short invisible period, then fallback, with a limited window to swapA middle ground between the two
blockInvisible text for a short time while the font loadsIcon fonts, where fallback glyphs would be wrong

Self-hosting

Because these fonts are open-licensed, you can serve the files from your own domain instead of Google's. Reasons people do it: one fewer third-party connection, full control over caching, and privacy, since requests to Google's servers send the visitor's IP address to Google, which some European site owners avoid. Ways to do it:

@font-face {
  font-family: "Inter";
  src: url("/fonts/inter-latin-var.woff2") format("woff2");
  font-weight: 100 900;      /* the variable range */
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212, U+FEFF;
}

When self-hosting, preload only the one file your above-the-fold text needs, with <link rel="preload" href="/fonts/inter-latin-var.woff2" as="font" type="font/woff2" crossorigin>. Preloading several fonts makes them compete with your images and scripts.

Variable font notes

A variable font is a single file that contains a continuous range along one or more axes, instead of one file per weight. 28 of the 30 fonts here are variable; Poppins and Lato are static.

h1 { font-weight: 780; font-stretch: 90%; }
.lede { font-weight: 350; }
.fun-heading { font-family: "Fraunces", Georgia, serif; font-variation-settings: "SOFT" 100, "WONK" 1; }

Web-safe fonts and system font stacks

"Web-safe" fonts are the ones installed on almost every Windows and Mac computer, so they need no download. They are not guaranteed on Android, Linux or every iPhone, which is why a font stack always ends with a generic family such as sans-serif or serif.

FontTypeNotes
ArialSansOn Windows and macOS. Not part of Android, which uses its own sans instead.
HelveticaSansOn Apple devices. Windows has no Helvetica, so the next font in the stack is used.
VerdanaSansVery wide and readable at small sizes; on Windows and macOS.
TahomaSansA narrower relative of Verdana; on Windows and macOS.
Trebuchet MSSansHumanist sans on Windows and macOS.
GeorgiaSerifA serif designed for screens; on Windows and macOS.
Times New RomanSerifNarrow and dated on screen; mostly useful as a last fallback.
Courier NewMonoThin strokes; prefer a modern monospace stack below.

A system font stack goes further and uses each operating system's own interface font: San Francisco on Apple devices, Segoe UI on Windows, Roboto on Android and usually Noto or another default on Linux. It costs nothing to load and looks native. These are the stacks we recommend at the time of writing:

/* Sans: the operating system's interface font */
font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
  "Helvetica Neue", Arial, "Noto Sans", sans-serif,
  "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji";

/* Serif */
font-family: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;

/* Monospace */
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
  "Liberation Mono", "Courier New", monospace;

system-ui is supported by all current major browsers. -apple-system and BlinkMacSystemFont only help older browsers on Apple devices and can be dropped if you do not support them. ui-serif and ui-monospace are not recognized by every browser, which is why each stack continues with named fonts. The emoji fonts sit at the end so emoji characters render in color.

This paragraph is set in the system sans stack, so it shows your own device's interface font.

Performance notes

Font pairing suggestions

Pair fonts that differ clearly (a serif with a sans, or a wide display face with a plain text face) and share something, such as a similar x-height or mood. Limit yourself to two families. These combinations use only fonts from this page:

HeadingsBodyWhy it worksGood for
FrauncesInterA soft, characterful serif against a neutral sansFood, lifestyle, craft brands
Playfair DisplaySource Sans 3High-contrast headlines with a quiet, open text faceBoutiques, hotels, events
Space GroteskIBM Plex SansBoth technical in tone, but the heading has more personalityDeveloper tools, B2B tech
MontserratMerriweatherWide geometric sans over a sturdy reading serifBlogs, nonprofits
OswaldLatoCondensed impact headings with a warm body fontGyms, sports, trades
NewsreaderNewsreaderOne family using optical sizes for both rolesNewsletters, magazines
Plus Jakarta SansPlus Jakarta SansA single sans with weight contrast only, simple and consistentStartup landing pages

To try more combinations side by side, use the font pairing tool. For colors that suit your type, see website color schemes, and for ready-made layouts that use these fonts, browse the hero section components.

Frequently asked questions

What is the best font for a website?

There is no single best font, but Inter, Source Sans 3 and Open Sans are dependable choices for body text because they stay clear at small sizes. For headings, pick something with more character that suits the brand, such as Playfair Display, Fraunces or Space Grotesk.

Are Google Fonts free for commercial use?

Yes. Every family on Google Fonts is under an open licence, mostly the SIL Open Font License 1.1, with some under Apache License 2.0 and the Ubuntu Font Licence. All three allow commercial use on websites, in apps and in print. Check the licence on each family's page before you use it.

How many fonts should a website use?

Usually one or two families. A common setup is one for headings and one for body text, or a single family using different weights for both. Each extra family and weight adds files the browser has to download.

What is a variable font?

A variable font is one font file that contains a continuous range of styles along axes such as weight, width or optical size. Instead of loading separate files for regular, medium and bold, you load one file and can use any weight in its range.

What are web-safe fonts?

Fonts that are already installed on almost all Windows and Mac computers, such as Arial, Verdana, Georgia and Times New Roman, so they need no download. They are not guaranteed on every phone or Linux system, so always end a font stack with a generic family like sans-serif.

Should I self-host Google Fonts?

You can, since the licences allow it. Self-hosting removes a connection to a third-party domain, gives you control of caching and keeps visitor IP addresses away from Google. Loading from Google Fonts is simpler and handles subsetting for you. Either way, use WOFF2 and font-display: swap.

More in Guides

Website builders for the businesses in this article

Related guides and tools

Start building

We.Inc is an AI-powered website builder you can resell under your own brand. Launch a branded client dashboard, bill on Stripe Connect, and deliver AI-generated websites in minutes. White-label plans start at $99 a month for 25 client sites, with a 7-day free trial and no per-site fees.

Product

Who It's For

Features

Resources

Company

View Sitemap