Understanding Components and Instances in Figma
Before diving into the methods, it's crucial to understand what you're working with. In Figma, a component is a master element that can be reused across your designs. An instance is a copy of that component placed on your canvas. Instances maintain a live connection to the main component, meaning any change to the main component propagates to all instances.
This relationship is intentional and beneficial for design systems, but it creates confusion when users search for how to "undo" a component. The terminology matters: you're not actually "un-componentizing" an element--you're detaching an instance from its main component, or resetting an instance to remove your customizations.
Key characteristics of this relationship include:
- Main components exist in the Assets panel and define the master version
- Instances appear on your canvas and can be identified by the four-dot icon in the selection indicator
- Changes to main components automatically update all connected instances
- Instances can have overrides (text changes, property modifications) without breaking the link
Understanding this distinction is fundamental to working efficiently with Figma design systems and avoiding accidental changes that affect your entire project.
Method 1: Detach Instances Using the Right-Click Menu
The most straightforward method to break the connection between an instance and its main component is through the right-click context menu. This process converts the instance into regular, independent layers that no longer receive updates from the original component.
Step-by-Step Instructions
- Select the instance you want to detach on your canvas
- Right-click to open the context menu
- Locate and select "Detach instance" option
- Confirm the action if prompted
- The instance is now converted to regular layers
What Happens When You Detach an Instance
Detaching an instance is a one-way action. Once detached, the element becomes independent and will not receive updates from the original component. Any changes you made to the instance as overrides remain, but future changes to the main component will not affect this element. This is ideal when you need complete creative freedom but means losing the benefits of component-based design for that specific element.
This method is particularly useful when you're working on a custom design element that has diverged significantly from the original component and no longer benefits from the synchronized update system.
Method 2: Using Keyboard Shortcuts for Faster Detachment
For designers who prefer keeping their hands on the keyboard, Figma provides keyboard shortcuts for detaching instances. These shortcuts can significantly speed up your workflow when working with many instances or batch-processing design elements.
| Platform | Shortcut | Action |
|---|---|---|
| Windows | Ctrl + Alt + R | Detach instance |
| Mac | Cmd + Option + R | Detach instance |
Resetting Instances vs. Detaching
A related but distinct action is resetting an instance, which removes your overrides and restores the instance to match the main component exactly. This is useful when you've made experimental changes and want to start fresh without completely breaking the component relationship.
| Action | Effect | Component Link |
|---|---|---|
| Reset | Removes all overrides | Preserved |
| Detach | Removes all connections | Removed |
Choose reset when you want to start fresh with the original design. Choose detach when you need complete creative freedom from the component system. Understanding the difference between these actions helps you maintain efficiency in your product design workflow.
Method 3: The Complete "Un-Component" Workflow
When you have a main component (not an instance) and want to convert it to regular layers, the process requires an additional step. Main components exist in your Assets panel and define the master version--there's no direct way to "un-componentize" them. Instead, you create an instance, detach it, then delete the original component.
Complete Workflow
- Create an instance of the component on your canvas
- Detach the instance using right-click menu or keyboard shortcut
- Navigate to the Assets panel and locate the original component
- Delete or archive the original component
- Your detached instance is now independent
When to Use This Approach
This workflow is appropriate when:
- You've outgrown the component system for a particular element
- The component structure has become too complex for your needs
- You're simplifying a design system and need more flexibility
However, consider the long-term implications--breaking component relationships can make future updates more difficult. This approach should be part of a broader design system strategy rather than an ad-hoc solution.
Pro tips for maintaining a healthy design system while knowing when to break the rules
Document Your Decisions
Leave comments or notes explaining why you detached specific instances. This helps future team members understand the design rationale.
Use Variants First
Before creating entirely new components, consider using variants within existing components to handle different states and variations.
Create a Sandbox Library
Set up a separate component library for experimental elements that may or may not become permanent parts of your design system.
Periodic Reviews
Review detached elements periodically to see if any should be re-integrated into the component system as the design evolves.
When to Keep the Component Link
Not every override requires detachment. The component system handles these elegantly through overrides, preserving the benefits of centralized updates:
- Text changes: Update copy without breaking the link to the main component
- Color swaps: Change fills using the instance selector while maintaining sync
- Property modifications: Adjust visible properties while keeping synchronization with the master
Only detach when you need fundamental structural changes that the component system doesn't support well, such as adding new layers, changing layer hierarchy, or modifying constraints. For most design iterations, the override system provides the flexibility you need while maintaining the efficiency of a unified design system.
Understanding when to leverage Figma's component features versus when to detach is a key skill for maintaining both design flexibility and system efficiency.
Frequently Asked Questions
Sources
- LogRocket: How to undo a component in Figma - Comprehensive tutorial covering multiple methods for detaching instances from components
- Figma Help Center: Guide to components in Figma - Official documentation explaining the relationship between main components and instances