Slant Axis
The slant axis tagged slnt inside variable fonts tilts letterforms along a continuous range from upright to oblique using one file. Typical ranges run from zero to negative fifteen degrees allowing values like oblique negative 10deg in CSS or the direct font variation settings target of slnt negative 10. The browser interpolates the outlines on the fly which means hover transitions and scroll driven effects stay smooth without extra font requests. This capability replaces the old pattern of loading both a roman and an italic file for every weight you ship. Production implementations declare the exact range in the at font face block so the browser only downloads what the design actually uses. Foundries like those behind Geist and Mona Sans build the axis with proper hinting so letters stay crisp at every angle instead of turning into pixelated garbage. The axis pairs cleanly with weight and optical size letting you animate multiple parameters from the same payload when the typeface supports it.
The slant axis is not a true italic. The ital axis handles that job by swapping to completely redrawn letterforms with custom curves proportions and spacing adjustments drawn by the type designer. Slant simply shears the roman glyphs which works for display work but looks mechanical and hurts readability in body text. It is not a CSS transform skew hack from the 2010s that mangled stroke weights created inconsistent contrast and rendered like garbage on retina screens. Slant axis data includes the corrections to keep the original design intent intact. It is not an automatic include in every variable font. Shipping an axis you never reference wastes bytes that could have gone to tighter subsetting or faster LCP. Teams that forget this audit step ship three hundred kilobyte fonts when one hundred fifty would have sufficed.
Concrete examples show exactly how this plays out in shipping products. Vercel activates the slant axis in Geist for navigation hovers across their 2024 marketing pages. The links shift from zero to negative nine degrees in one hundred twenty milliseconds creating a forward lean that echoes their brand animations while the single subsetted file stays under one hundred fifty kilobytes. Stripe used slant aggressively in their 2022 checkout flow experiments where error messages would tilt negative twelve degrees to signal urgency while the weight axis simultaneously dropped to light. The combination drew user attention faster than color changes alone and kept the total font budget at one hundred eighty kilobytes after pyftsubset trimmed unused glyphs. Figma applies slant in their variable Inter Display for toolbar labels in FigJam. Hovering a tool tilts the label negative five degrees at twelve pixel size which feels precise rather than gimmicky and coordinates with icon scales for connected motion. Apple Music uses slant in their browse tab where playlist titles lean on hover to create depth that matches the pulsing album art without adding payload. The New York Times incorporated slant into their 2024 election coverage interactives where map labels tilt to indicate trending topics and the font stays under one hundred eighty kilobytes thanks to aggressive Latin plus language extension subsetting. Linear tested slant in early builds of their 2023 UI but cut it because the motion added noise to dense task lists. They now reserve any slant effects for landing pages where the variable font already ships for weight and optical size reasons.
Activate the slant axis when your designs call for animated headlines or interactive text elements that benefit from directional tilt. It pays off the moment you add a single hover slant transition because it eliminates the second font file static setups require. Use it for headline hovers call to action reveals and scroll driven hero text where the lean adds narrative direction. Test every slant value against real content at real sizes because foundry specimens lie. Ten degrees that looks elegant at seventy two pixels can close counters and create blotches at fourteen pixels. Combine slant with optical size for headlines that change both tilt and contrast as they scale. Never combine it with weight animation on body text or you create a distracting mess that pulls focus from the content. Drop the slant axis completely when your project is a static marketing site with two weights and zero motion. In those cases add the variation axis range parameter to your pyftsubset command to excise the slnt data completely. The bytes you save go straight to your Lighthouse budget. The New York Times follows this rule strictly applying slant only where it serves a clear editorial purpose in interactive stories while keeping article pages on static cuts for speed. Linear made the same calculation in their product UI choosing to omit slant to keep the interface calm and fast. Common gotchas include forgetting to declare the exact slant range in the font face rule which forces the browser to download unused variation data or pushing angles too far at small sizes. Run your final designs through device testing on actual phones before committing. Teams that skip axis specific subsetting end up with fonts twenty five percent larger than needed. The fonttools command with proper unicode ranges layout features and axis dropping trims the file with zero visible loss. Measure before and after with the network tab. The difference often equals the size of your entire CSS bundle. Ignore these details and your variable font becomes a performance liability instead of an advantage.
The slant axis turns flat hovers into living motion when you ship it right and pure bloat when you do not.
Read the full guide
Related terms
Keep exploring
Variable font
A font file that exposes one or more axes (weight, width, slant, optical size, or custom) that can shift at runtime without loading additional files.
Optical Size Axis
The variable font axis that modifies contrast, x-height, and detail based on rendered size so one file can serve both body text and display headlines correctly.
Font Variation Settings
Font variation settings is the CSS property that controls specific values along each axis of a variable font at runtime. Instead of hoping font-weight lands on the right stop you set exact numbers for wght wdth opsz or any custom axis the designer exposed.