Auto layout is one of Figma's most powerful features, transforming how designers create responsive and adaptable interfaces. Before auto layout, designers manually adjusted spacing, alignment, and sizing for every screen size variation—a tedious, error-prone process.Â
Auto layout automates this workflow, allowing components to resize intelligently based on content and container dimensions. Mastering this feature is essential for modern UI design, enabling designers to build scalable design systems and prototypes that behave like real products.
What is Auto Layout?
Auto layout is a Figma property that allows frames to automatically resize and reposition their contents based on defined rules.Â
Think of it as a CSS flexbox translated into a visual interface. You define spacing, alignment, and direction, then Figma handles the calculations as content changes.
When you apply auto layout to a frame, it becomes a container with layout rules. Add a new element, and the frame expands. Change text length, and buttons adjust automatically. This behavior mirrors how developers build responsive interfaces with code, making design-to-development handoff smoother.Â
Basics of Auto Layout
Understanding Frames and Containers
In Figma, frames are the foundation of auto layout. A standard frame has fixed positioning for its children.
An auto layout frame, however, acts as a smart container where children arrange themselves according to layout rules.
The parent container is the auto layout frame itself, which controls spacing, direction, and alignment. Child elements inside adapt their positions based on the parent's settings.Â
You can nest auto layout frames, creating hierarchies where each level has its own layout logic. This nesting enables complex, responsive designs that maintain proper spacing and alignment regardless of content changes.
Layout Options

Figma's auto layout provides several core options that define how content arranges itself within frames.Â
Flow determines whether children stack horizontally or vertically. Horizontal layouts create rows, ideal for navigation menus or button groups. Vertical layouts create columns, perfect for lists or form fields.Â
Spacing/gap controls the gap between child elements. Set a specific pixel value, and Figma maintains that distance consistently, even as you add or remove items.Â
Padding adds space between the frame's edge and its contents, creating breathing room around elements.
Alignment options—top left, top center, top right, left, center, right, bottom left, bottom center, and bottom right—control how children distribute within the parent.Â
How to Use Auto Layout in Figma
Starting with Auto Layout
Select a frame and add a rectangle and some text inside it.

Without auto layout, if you add another rectangle, it will overlay the text instead of positioning itself next to it. This is the problem auto layout solves.

To apply auto layout to your frame, select it and press Shift + A.

Now when you add another rectangle, the auto layout automatically adjusts to accommodate it, positioning elements in a row or column instead of overlapping them.

Applying Auto Layout Settings
Once auto layout is applied, you can adjust settings in the right panel to refine how it behaves.
Direction: Change between horizontal and vertical layouts by clicking the direction icons.
- Horizontal arranges items in a row

- Vertical stacks items in a column

Spacing: Control the gap between all child elements by entering pixel values in the spacing field. This spacing applies uniformly between all children.
Padding: Adjust padding separately for each side (top, right, bottom, left) by clicking the padding icon and entering values. Independent padding control enables precise layout control—for example, creating a card with more vertical padding than horizontal.
Alignment: Click the alignment icons to control how children are positioned:

- Left/top alignment
- Center alignment
- Right/bottom alignment
- Space between for even distribution



