Custom web fonts have to download before a browser can display text in them, and depending on how a theme handles that gap, visitors either see a brief flash of invisible text while waiting, or see the page render first in a fallback font and then visibly swap once the real font finishes loading — both are a font-loading strategy issue, not a broken font file. Neither outcome is inherently wrong on WordPress’s part — the browser has to do something while waiting, and different font-loading configurations simply choose differently between those two imperfect options by default.
Before you buy, one quick look
Read-only. Reload the affected page a few times on a throttled or slow connection, if your browser’s developer tools support network throttling, and watch specifically what the text does in the first second.
A visible flash of invisible text versus a visible swap to a different font are technically different situations with different fixes, so noting which one you’re actually seeing helps considerably before ordering.
It’s also worth checking whether the effect happens on every page using that font, or only specific ones, since a page-specific pattern usually points at something more localized than a sitewide font configuration issue. Either pattern is fixable, but they call for slightly different starting points.
Font loading & FOUT/FOIT correction
Custom fonts flash, swap visibly, or briefly show invisible text while loading. We correct how your theme loads fonts to eliminate the flicker.
- Full backup taken before we start
- If we can’t fix it, you get your money back
- We never ask for your own password
This or something else?
| Text flashes invisible or visibly swaps fonts while the page loads | This fix covers it |
| Fonts don’t load at all, showing only a fallback permanently | A different, font-loading-failure diagnosis |
| The concern is general page speed, not specifically font rendering | A different, general performance service |
| You want font compression or self-hosting as a broader optimisation | A related but distinct performance service |
| Only one specific page shows the issue, not the whole site | This fix covers it, likely a page-specific font loading gap |
What you are seeing
- Text briefly invisible before content appears on page load
- A visible jump or shift as one font swaps for another shortly after loading
- The effect more noticeable on slower connections or larger pages
- Inconsistent behaviour between different pages using different fonts
- The issue present across most or all browsers, not just one
Common causes
- No font-display strategy set, leaving the browser’s default, often unhelpful behaviour
- Custom fonts loaded from an external source without proper preloading
- Multiple font weights or styles all loading regardless of whether the page uses them
- A render-blocking font stylesheet delaying the whole page rather than just the text
- A theme or plugin overriding font-loading settings inconsistently across templates
What we do
- Identify exactly how fonts are currently being loaded across the site
- Determine the appropriate font-display strategy for your specific fonts and content
- Set up preloading for fonts used above the fold, where that helps
- Remove unused font weights or styles adding unnecessary loading weight
- Confirm the flash or swap is eliminated or genuinely minimised across page types
- Test across the browsers and connection speeds that matter for your visitors
What is included
- An appropriate font-loading strategy applied across the site
- Preloading configured for above-the-fold font usage
- Removal of unused font weights or styles
- Testing across representative browsers and connection speeds
Not included
- Redesigning your typography or changing the fonts themselves
- A full page-speed audit covering causes unrelated to font loading
- Self-hosting fonts as a separate infrastructure decision, if not already in place
- Ongoing monitoring as you add new fonts in future
Questions about this fix
Will this completely eliminate any visible font change?
A brief, well-handled transition is sometimes unavoidable depending on your fonts and connection speeds, but we aim to make it as minimal and unobtrusive as the situation allows.
Should I self-host my fonts instead of using a font service?
It can help with loading consistency, though it's a separate decision from the loading strategy itself — we can discuss whether it's worth doing for your specific setup.
Will this affect my page's design at all?
No — the fonts and their appearance stay exactly the same; this only changes when and how they become visible during loading.
Does this help my Core Web Vitals scores?
Font-loading issues can affect layout shift specifically, so this often helps, though it's one factor among several rather than a complete Core Web Vitals fix on its own.
Why does this only seem to happen on some pages?
Usually because those specific pages load a font weight or style not used elsewhere, or load fonts through a different mechanism than the rest of the site.
Related fixes
If this is the second time this year
A bad update breaking the site is a symptom of updates not being tested first. Care plans run every update on a staging clone before it reaches your live site, which is the actual fix for this happening again.
Your access, your rules
Create a separate admin account for us and delete it when we are done. For anything else, we get in touch and agree a method — never a form field on this site, never by reply to an email.
We back up first, always
Before anything is touched we take a full backup and keep it for 30 days. If a fix goes wrong, we put the site back exactly as it was.
If it is not what you bought
If the problem turns out smaller than what you ordered, we refund the difference. If it is bigger, we stop and send a quote before doing any extra work.
If we cannot fix it
You get back what we received. Diagnosis is on us — you only pay when the problem is actually solved. The payment processor takes its fee before the money reaches us, so we never hold it and it is not ours to return. That is true here as everywhere else.
If it comes back
Reply within seven days of delivery and we put it back on the bench at no cost. The fix is not finished until it holds.
What we are responsible for
If something goes wrong with a fix, our responsibility is limited to what you paid for it. We take a full backup first so mistakes can be undone, and we tell you before doing anything outside what you bought.