Nested components are one of Figma’s most powerful (and misunderstood) features. At their best, they unlock modularity, consistency, and scalable design systems. At their worst, they cause confusion, overrides gone wrong, and hard-to-debug layouts.
This article will teach you how to use nested components the right way—with practical examples, mental models, and guardrails to help you scale your UI cleanly and confidently.
🧱 What Are Nested Components in Figma?
A nested component is simply a component placed inside another component.
Imagine this:
- You design a button icon as a component.
- Then, you insert that button icon into your main Button component.
- Now, your Button contains a nested Icon component—and can update automatically when the icon changes.
This creates a hierarchy of components that helps manage complexity. Instead of duplicating elements or styles, you build Lego-like blocks that fit together—and stay consistent across designs.
🔁 Common Examples of Nested Components
Here are popular patterns where nesting works beautifully:
| Use Case | Parent Component | Nested Component |
|---|---|---|
| Button with Icon | Button | Icon |
| Modal with Header/Footer | Modal Container | Header, Footer |
| Card with Actions | Card | Button, Badge |
| Navigation Bar | Navbar | Nav Item, Logo |
| Form Field | Input Wrapper | Label, Icon, Hint |
| Data Table | Table | Table Cell |
Nested components let you define smaller reusable units and assemble them into larger layouts—without repeating yourself.
🎯 Why Use Nested Components?
Pros:
✅ Centralized control – update once, propagate everywhere
✅ Scalable systems – build atomic, flexible, modular UIs
✅ Consistent behavior – less drift, fewer bugs
✅ Smarter overrides – nested components retain their logic
But only if you use them well.
⚠️ The Pitfalls of Nested Components
Done poorly, nesting can introduce problems like:
- 🔄 Too many layers deep: nesting 5+ levels can make it hard to override or inspect
- ❌ Unintended overrides: nested logic can break if a child component expects certain props
- 🧩 Inflexibility: tightly coupled components can’t adapt to edge cases
- 🕵️ Hard to debug: especially when variants and booleans are mixed in
That’s why you need a clear strategy.
📐 Best Practices for Nesting Components in Figma
1. Keep Nesting Shallow
Avoid going more than 2–3 levels deep unless absolutely necessary. Shallow trees are easier to manage and override.
Example:
Card > Button= good.Card > Form > Button > Icon > Text= risky.
2. Use Variants Inside Nested Components
Let’s say you have a Badge inside a Card. If the badge has variants like Success, Warning, Error, make sure to expose those variants in a logical way at the parent level—or document clearly how they should be controlled.
3. Name Layers Clearly
Nested layers should have semantic, purposeful names—especially when you have multiple of the same nested component in different states.
Good:
Icon / Chevron Down
Bad:Frame 27
4. Document Nested Behavior
Use a “README” page or section to explain:
- What components are nested where
- Which properties are exposed vs internal
- How overrides work at each level
5. Watch for Unexpected Resets
If you replace a nested instance with another component (e.g., swap Icon / X for Icon / Check), Figma might reset other props. Always check your nested layers after swaps.
🧰 Power Tricks for Smart Nesting
🔄 Swappable Components
Use nested components with Instance Swap properties so users can change icons, avatars, or actions on the fly.
📦 Pack Layouts with Auto Layout
Combine Auto Layout with nesting to create responsive, stretchable UI blocks like:
- Navigation bars
- Multi-column cards
- Feature blocks with icons + text
🌙 Light/Dark Mode with Nested Variables
Use nested components to switch themes. Each nested element can respond to a Mode variable and adjust colors/tokens accordingly.
🧠 Think in Systems, Not Screens
Nested components shift your thinking from static screens to dynamic systems.
Instead of designing 12 variations of a button or 20 cards for every breakpoint, you build a few modular, token-powered components—and assemble them like a UI framework.
This keeps your designs:
- Smaller
- Cleaner
- Faster to maintain
- Easier to hand off to developers
✅ Final Checklist
| ✅ Nesting Do’s | ❌ Nesting Don’ts |
|---|---|
| Use clear, semantic names | Nest more than 3 levels deep |
| Document what’s nested | Create tight coupling |
| Use auto layout smartly | Override without planning |
| Expose useful props | Forget about accessibility |
Nested components aren’t just a Figma feature—they’re a mindset. When used intentionally, they unlock a modular design approach that scales with your product and team.
Start small, structure smart, and watch your system evolve with clarity and consistency.
➡️ Next up: “How to Use Figma’s Dev Mode to Bridge the Gap Between Design and Code”
