Skip to content

Media Fonts and Embeds

Gaurav Tiwari edited this page Aug 27, 2026 · 1 revision

Media, Fonts and Embeds

The lowest-risk, highest-return group. Most of it is on by default.

Images

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 rendering

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.

Fonts

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.

YouTube embeds

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.

Bloat controls

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 disabled rather 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.

Related

CSS Optimization · JavaScript Optimization · Settings Reference

Clone this wiki locally