- After Effects User Guide
- Beta releases
- Getting started
- Workspaces
- Projects and compositions
- Importing footage
- Preparing and importing still images
- Importing from After Effects and Adobe Premiere Pro
- Importing and interpreting video and audio
- Preparing and importing 3D image files
- Importing and interpreting footage items
- Import SVG files
- Working with footage items
- Detect edit points using Scene Edit Detection
- XMP metadata
- Text and Graphics
- Text
- Motion Graphics
- Work with Motion Graphics templates in After Effects
- Use expressions to create drop-down lists in Motion Graphics templates
- Work with Essential Properties to create Motion Graphics templates
- Replace images and videos in Motion Graphics templates and Essential Properties
- Animate faster and easier using the Properties panel
- Variable Font Axes
- Drawing, Painting, and Paths
- Overview of shape layers, paths, and vector graphics
- Paint tools: Brush, Clone Stamp, and Eraser
- Taper shape strokes
- Shape attributes, paint operations, and path operations for shape layers
- Use Offset Paths shape effect to alter shapes
- Creating shapes
- Create masks
- Remove objects from your videos with the Content-Aware Fill panel
- Roto Brush and Refine Matte
- Create Nulls for Positional Properties and Paths
- Layers, Markers, and Camera
- Animation, Keyframes, Motion Tracking, and Keying
- Animation
- Keyframe
- Motion tracking
- Keying
- Transparency and Compositing
- Adjusting color
- Effects and Animation Presets
- Effects and animation presets overview
- Effect list
- Effect Manager
- Simulation effects
- Stylize effects
- Audio effects
- Distort effects
- Perspective effects
- Channel effects
- Generate effects
- Time effects
- Transition effects
- The Rolling Shutter Repair effect
- Blur and Sharpen effects
- 3D Channel effects
- Utility effects
- Matte effects
- Noise and Grain effects
- Detail-preserving Upscale effect
- Obsolete effects
- Cycore plugins
- Expressions and Automation
- Expressions
- Expression basics
- Understanding the expression language
- Using expression controls
- Syntax differences between the JavaScript and Legacy ExtendScript expression engines
- Editing expressions
- Expression errors
- Using the Expressions editor
- Use expressions to edit and access text properties
- Expression language reference
- Expression examples
- Automation
- Expressions
- Immersive video, VR, and 3D
- Construct VR environments in After Effects
- Apply immersive video effects
- Compositing tools for VR/360 videos
- Advanced 3D Renderer
- Import and add 3D models to your composition
- Import 3D models from Creative Cloud Libraries
- Create parametric meshes
- Image-Based Lighting
- Animated Environment Lights
- Enable lights to cast shadows
- Extract and animate lights and cameras from 3D models
- Tracking 3D camera movement
- Adjust Default Camera Settings for 3D compositions
- Cast and accept shadows
- Embedded 3D model animations
- Shadow Catcher
- 3D depth data extraction
- Modify materials properties of a 3D layer
- Apply Substance 3D materials
- Work in 3D Design Space
- 3D Transform Gizmos
- Single 3D Gizmo for multiple 3D layers
- Do more with 3D animation
- Preview changes to 3D designs real time with the Mercury 3D engine
- Add responsive design to your graphics
- Views and Previews
- Rendering and Exporting
- Basics of rendering and exporting
- H.264 Encoding in After Effects
- Export an After Effects project as an Adobe Premiere Pro project
- Converting movies
- Multi-frame rendering
- Automated rendering and network rendering
- Rendering and exporting still images and still-image sequences
- Using the GoPro CineForm codec in After Effects
- Working with other applications
- Collaboration: Frame.io, and Team Projects
- Memory, storage, performance
- Knowledge Base
Find answers to common questions about Variable Font Axes functionality in After Effects.
Use new beta features
Variable Font Axes support is now available for testing and feedback. Try it now in After Effects (beta).
Best practices
Here are some guidelines for designing effectively with variable fonts in After Effects:
Start with common axes
- Weight, Width, and Slant are the most widely supported
- Master these before exploring custom axes
Respect axis ranges
- Don't push axes to extremes unless intentional
- Mid-ranges often look best for body text
- Extremes work well for headlines and emphasis
Consider readability
- Very light weights (< 300) can be hard to read
- Very condensed widths (< 75%) reduce legibility
- Extreme slants (> 15°) affect readability
Combine axes thoughtfully
- Weight, along with Width, together can be powerful
- Too many simultaneous axis changes can look chaotic
- Test combinations at different scales
Use these animation guidelines to create smooth and effective variable font animations in After Effects:
Smooth keyframing
- Use Easy Ease for organic axis transitions
- Avoid linear keyframes unless seeking a robotic feel
- Graph Editor helps fine-tune axis animations
Timing is critical
- Fast axis changes (< 10 frames) can feel abrupt
- Slow changes (> 60 frames) provide the smoothest transitions
- Match timing to music/audio for impact
Layering effects
- Combine axis animators with transform properties
- Axis changes + Position/Scale/Opacity means dynamic
- Don't rely solely on axis animation
Performance optimization
- Limit active axis animators (disable unused ones)
- Pre-render complex axis animations when possible
- Reduce composition resolution during preview
Use these tips to improve your workflow when animating variable font axes in After Effects:
Test fonts early
- Not all variable fonts are created equal
- Some have more refined interpolation than others
- Test axis ranges before committing to a font
Name animators clearly
Rename animators to describe their purpose. For example, Weight Pulse, Width Squeeze, etc.
Makes timeline organization easier
Use Markers
- Add composition markers for axis animation timing
- Label keyframe sections for easy navigation
- Document complex expression selector logic
Save presets
- Create presets for reusable axis animations
- Build a library of go-to effects
- Share presets across projects and teams
Troubleshooting
The issue occurs when the font you’re using doesn’t support the axis you want to animate. Try the following to resolve this issue:
- Open the Variable Font Axes pop-up in the Properties panel to check if the font actually supports the axis
- If you are using mixed fonts, ensure all fonts have the axis
- If the font was changed after creating the animator, the animator may reference a nonexistent axis
- Delete the animator and add it again after setting the correct font
Range Selector settings target different characters than intended.
- Check the Based On setting: Characters, Characters Excluding Spaces, Words, or Lines.
- Verify that Start and End values define the correct range.
- Check Units: Percentage vs. Index changes behavior.
- Offset could also cause the range to shift unexpectedly.
It could be because the Timeline indicator (CTI) is not at the correct time, or there is a caching issue. Try following these solutions to troubleshoot this issue:
- Move the CTI to ensure you're at the right keyframe
- RAM Preview to update cache (spacebar or 0 on numeric keypad)
- Check if keyframes exist that override your changes
- Close and reopen the composition to refresh
Each font defines its own minimum and maximum ranges for the axes. If you want to investigate more, use the following methods:
- Check the font's specification or documentation
- Open the Variable Font Axes pop-up in the Properties panel to see the valid range
- Some fonts have narrow ranges. For example, Weight 300-700 instead of 100-900
- Try a different variable font with a wider range if needed
If you change fonts after applying an axis and the same axis exists in the new font, but the minimum or maximum range is different, the original range will be maintained unless you reapply the axis (then it will reset and update).
It could be because the target font doesn't have the same axes as the source font. Try the following to find a solution:
- Verify that the target font has matching axis tags, such as wght, wdth, etc.
- Custom axes (INFM, BNCE, etc.) are font-specific and won't transfer
- Manually recreate animators for fonts with different axes
- Use fonts from the same family or designer for better compatibility
If you exceed the maximum of 8 different axes per text layer for animation, try to reduce the number of active animators by deleting unused ones.
Helpful resources
You can find variable fonts in Adobe Fonts by using a simple search of the "Variable" keyword. You can also explore other sources and similar paid or free font foundries.
Visit the Microsoft OpenType website for detailed technical information on axis tags and font structure.