-
Notifications
You must be signed in to change notification settings - Fork 0
Media Fonts and Embeds
The lowest-risk, highest-return group. Most of it is on by default.
| Setting | Default | What it does |
|---|---|---|
| Lazy load | on |
loading="lazy" on offscreen images |
| Add dimensions | on | Injects width/height from the attachment, cutting layout shift |
| Critical images | 2 |
Leading images excluded from lazy-loading |
| Optimize uploads | off | Generate WebP/AVIF variants at upload |
| Rewrite to variants | off | Serve those variants |
| Format | webp |
webp or avif
|
| Compression | 82 |
Critical images matters more than it looks. Lazy-loading your LCP image actively hurts the metric you are trying to improve, because the browser delays the one request that decides when the page appears finished. The first two images are excluded by default; raise it if your hero is a gallery.
Variants are generated through the queue, not during an upload request, so a large media import does not block.
Per-image control:
add_filter( 'gt_performance_media_lazy_load', function ( bool $lazy, $attachment ) {
return is_front_page() ? false : $lazy;
}, 10, 2 );lazy_render_selectors applies CSS content-visibility to matching containers, so the browser skips layout and paint for offscreen sections. Effective on long pages. Use it on sections, not on anything that must be measurable immediately — and never on something an anchor link jumps to.
| Setting | Default |
|---|---|
| Self-host Google Fonts | off |
| font-display | swap |
Self-hosting downloads the stylesheet and font files once, stores them under the cache directory, and rewrites the tags to your own domain. After that, no visitor request reaches Google — which is the privacy win as much as the performance one. See External Services.
font-display: swap shows fallback text immediately rather than leaving invisible text while a font downloads.
Lightweight previews replaces a full YouTube iframe with a thumbnail and a play button. The real player loads from youtube-nocookie.com only after a click.
A standard embed costs several hundred kilobytes and multiple third-party connections on every page view, whether or not anyone watches. The facade costs one image.
Thumbnails come from i.ytimg.com in the visitor's browser. Your server sends nothing to YouTube.
Twenty-four independent switches for things WordPress loads that many sites never use — emojis, Dashicons on the front end, embeds, XML-RPC, jQuery Migrate, the RSD link, shortlinks, feeds, self-pingbacks, the password strength meter, global styles, and the REST API. Plus Heartbeat tuning, revision limits and autosave interval.
All conservative by default. Two worth care:
-
Disable REST API breaks the block editor and plenty of plugins if set to
disabledrather than the default gating. - Disable comments is site-wide.
Google Maps can be disabled globally with a per-page exclusion list, which is the usual shape: one contact page needs it, nothing else does.
CSS Optimization · JavaScript Optimization · Settings Reference
GT Performance · GPL-2.0-or-later · Issues and pull requests welcome
Getting started
Caching
Optimization
Delivery
Operations
Reference