Bird
Raised Fist0
Figmabi_tool~7 mins

Slots pattern for flexible components in Figma - Step-by-Step Guide

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Introduction
The slots pattern helps you build flexible components in Figma that can hold different content in specific areas. This makes your designs reusable and easy to update without changing the whole component.
When you want a button component that can have different icons or text inside it.
When creating a card component that needs to show different images or descriptions.
When designing a modal that can have various header and footer content.
When you want to swap parts of a component without detaching it.
When building a dashboard widget that can display different charts or data.
Steps
Step 1: Create a new component
- Layers panel
A new component appears in your assets and on the canvas
💡 Use a clear name for your component to find it easily later
Step 2: Add placeholder layers inside the component
- Component frame on the canvas
Empty frames or shapes appear where you want flexible content
💡 Name these placeholders clearly, like 'Slot - Icon' or 'Slot - Text'
Step 3: Convert placeholder layers to components
- Right-click placeholder layers → Create Component
Placeholders become nested components that act as slots
💡 This allows swapping content easily in instances
Step 4: Use the main component in your design
- Assets panel → drag component onto canvas
An instance of your flexible component appears
💡 You can now swap slot components inside this instance
Step 5: Swap slot components inside the instance
- Select slot component inside instance → right-click → Swap Instance
The slot content changes without affecting the whole component
💡 Use this to customize each instance with different content
Before vs After
Before
A button component with fixed icon and text that cannot be changed per instance
After
A button component with slots for icon and text that can be swapped individually in each instance
Settings Reference
Component Naming
📍 Layers panel
Helps identify slots and main components clearly
Default: Untitled
Swap Instance
📍 Right-click menu on nested component inside instance
Allows replacing slot content with other components
Default: Current nested component
Instance Overrides
📍 Properties panel when instance selected
Customize slots without detaching the instance
Default: Inherits from main component
Common Mistakes
Not converting placeholders to components before using them as slots
Slots won't be swappable if they are just regular layers
Always create nested components for each slot placeholder
Naming slots unclearly or not at all
Makes it hard to identify which slot to swap in instances
Use clear, descriptive names for slot components
Detaching instances to change slot content
Loses connection to main component and breaks reusability
Use the Swap Instance feature to change slot content
Summary
Slots pattern lets you build components with flexible, swappable parts.
Use nested components as slots inside a main component for easy customization.
Always name slots clearly and swap content via instance overrides to keep reusability.

Practice

(1/5)
1. What is the main purpose of the Slots pattern in Figma components?
easy
A. To create placeholders inside components for flexible content
B. To lock components so they cannot be edited
C. To export components as images
D. To automatically generate color palettes

Solution

  1. Step 1: Understand the Slots pattern concept

    Slots act as placeholders inside components where you can insert different content later.
  2. Step 2: Identify the main purpose

    This allows components to be flexible and reusable by changing only the slot content.
  3. Final Answer:

    To create placeholders inside components for flexible content -> Option A
  4. Quick Check:

    Slots = placeholders for flexible content [OK]
Hint: Slots hold flexible content inside components [OK]
Common Mistakes:
  • Thinking slots lock components
  • Confusing slots with export features
  • Assuming slots generate colors automatically
2. Which of the following is the correct way to define a slot inside a Figma component?
easy
A. Group layers and rename the group to 'Slot'
B. Use the 'Export' option on a layer
C. Add a frame and mark it as a slot placeholder
D. Create a text layer with the word 'Slot'

Solution

  1. Step 1: Recall how slots are defined

    Slots are defined by adding a frame or container inside a component and marking it as a slot placeholder.
  2. Step 2: Evaluate the options

    Only Add a frame and mark it as a slot placeholder correctly describes adding a frame and marking it as a slot placeholder.
  3. Final Answer:

    Add a frame and mark it as a slot placeholder -> Option C
  4. Quick Check:

    Slot definition = frame marked as slot [OK]
Hint: Slots are frames marked as placeholders inside components [OK]
Common Mistakes:
  • Confusing slots with export settings
  • Thinking renaming groups creates slots
  • Assuming text layers define slots
3. Given a component with a slot named IconSlot, what happens when you drag a new icon into this slot instance?
medium
A. The component breaks and shows an error
B. The original component's icon changes everywhere
C. The slot disappears and cannot be reused
D. The new icon replaces the slot content in that instance only

Solution

  1. Step 1: Understand slot instance behavior

    When you drag content into a slot in an instance, it replaces the slot content only for that instance.
  2. Step 2: Check effect on original component

    The original component remains unchanged; only the instance shows the new content.
  3. Final Answer:

    The new icon replaces the slot content in that instance only -> Option D
  4. Quick Check:

    Slot content replaced per instance [OK]
Hint: Slot content changes only in the instance, not original [OK]
Common Mistakes:
  • Thinking original component changes globally
  • Believing slots disappear after use
  • Assuming errors occur on drag
4. You created a slot inside a component but when you drag content into it, the content does not appear. What is the most likely cause?
medium
A. The slot frame was not marked as a slot placeholder
B. The component is locked and cannot be edited
C. The dragged content is not supported by Figma
D. The component has no fill color

Solution

  1. Step 1: Check slot setup

    If content does not appear when dragged, the slot frame might not be properly marked as a slot placeholder.
  2. Step 2: Rule out other causes

    Locking or fill color does not prevent slot content from showing; Figma supports common content types.
  3. Final Answer:

    The slot frame was not marked as a slot placeholder -> Option A
  4. Quick Check:

    Unmarked slot frame blocks content [OK]
Hint: Mark frames as slots to accept content [OK]
Common Mistakes:
  • Assuming locking blocks slot content
  • Blaming unsupported content types
  • Thinking fill color affects slots
5. You want to create a reusable button component with a slot for an icon and a slot for label text. Which approach best uses the Slots pattern to achieve this?
hard
A. Create two separate components: one for icon and one for label, then group them
B. Create a component with two frames marked as slots: one for the icon and one for the label text
C. Use a single text layer and change its content for icon and label
D. Create a component with fixed icon and label layers without slots

Solution

  1. Step 1: Understand the goal

    You want a flexible button where icon and label can be changed independently.
  2. Step 2: Apply Slots pattern

    Defining two frames as slots inside the button component allows replacing icon and label content separately in instances.
  3. Step 3: Evaluate other options

    Grouping separate components or fixed layers does not provide the same flexibility and reusability.
  4. Final Answer:

    Create a component with two frames marked as slots: one for the icon and one for the label text -> Option B
  5. Quick Check:

    Multiple slots = flexible reusable component [OK]
Hint: Use multiple slot frames for flexible parts [OK]
Common Mistakes:
  • Using fixed layers instead of slots
  • Grouping separate components without slots
  • Trying to use one text layer for icon and label