Your site is slow and it is probably the fonts
25 November 2025/1 min read
When a site feels slow, everybody looks at images first. Images are usually fine now, because every platform compresses them and every browser lazy-loads them.
Look at the fonts.
A depressing number of small business sites load six, eight, twelve font files. Usually because a theme requested a family with every weight and both italics, of which the design uses two. Each of those is a separate request, and text cannot paint until they resolve, which is why the page sits blank and then appears all at once.
Then there is the third-party part. Loading fonts from a font CDN means a DNS lookup, a connection, and a handshake to a domain that is not yours, before a single word appears. It also means that provider sees every one of your visitors.
Here is the whole fix, and it takes an hour.
Count what you actually use. Open the design. Most sites use two weights of one family and one of another. That is three files, not twelve.
Self-host them. Put the files on your own domain. Same connection, no third party, no extra handshake.
Use woff2 and nothing else. Every browser you care about supports it. The extra formats in most font snippets exist for browsers that are gone.
Set font-display: swap. Text paints immediately in a fallback and swaps when the real face arrives. Without it, some browsers show nothing for up to three seconds.
Preload the one or two above the fold. Not all of them. Preloading everything is the same as preloading nothing.
This site runs two families, seven files, a hundred and seventy two kilobytes total, served from its own origin. That is smaller than one hero image and it is the difference between type that appears and type that arrives.