UIGuides

How to Use Figma Branching

5 min read

Figma branching explained — when to use it, how to create and merge branches, handle conflicts, and why it's only available on the Organization plan at $45/editor/month.

If you've ever duplicated a Figma file to explore a direction without touching the main file, you've been doing a manual version of branching. Figma's built-in branching feature formalizes that process — with the ability to merge changes back into the original file and review conflicts before they land.

It's one of the most useful features Figma has shipped for design teams. It's also locked behind the Organization plan ($45/editor/month), which limits who gets to use it.

What branching is

Branching in Figma works like version control in code. You have a main file — your source of truth. From it, you can create branches: separate copies of the file where you make changes freely without affecting the main file.

When your work on the branch is ready, you merge it back. Figma shows you what changed, lets you review it, and handles the merge.

This is different from duplicating a file. Duplicates are orphaned — they have no connection to the original and can't be merged back. Branches maintain that connection throughout.

When to use branching

Branching isn't for every change. Fixing a typo or adjusting spacing on a component doesn't need a branch. Where branching pays off:

Explorations and design direction testing. You're trying two approaches to a navigation redesign and want both to be fully fleshed out before deciding which direction to pursue. Each gets its own branch.

Major feature work. You're designing a complex new feature that touches multiple screens and components. Working on a branch means the main file stays clean for everyone else while you work.

A/B design options. Stakeholders want to see two distinct approaches. Branch A and Branch B can each be developed in parallel, then compared side by side before a decision is made.

Design system updates. Changes to core components affect everything downstream. A branch lets you make and test those changes before publishing them to the library.

Creating a branch

You need to be on the Organization plan to access branching. If you're on Professional, you won't see the option.

To create a branch:

  1. Open the Figma file you want to branch from
  2. Click the file name at the top of the editor to open the file menu
  3. Select "Create branch"
  4. Name the branch something descriptive — "nav-redesign-v2" beats "new branch 3"

The branch opens as a separate file. You'll see a branch indicator in the top bar showing you're working in a branch, not the main file.

Making changes in a branch

Work in the branch exactly as you would in any Figma file. Add frames, modify components, restructure flows. Nothing you do affects the main file until you merge.

One thing to be aware of: if someone updates the main file while your branch is open, your branch can fall behind. Figma shows a "main file updated" notice. You can review what changed and decide whether to update your branch before merging.

Merging back

When your branch is ready:

  1. Click "Review and merge" in the branch indicator at the top of the screen
  2. Figma shows you a diff — what was added, changed, or removed compared to main
  3. Review each change
  4. Choose auto-merge or manual review mode

Auto-merge works when there are no conflicts — your changes and any changes made to main don't overlap.

Manual review is required when there are conflicts — the same layer or component was changed in both the branch and the main file. Figma shows you each conflict and asks which version to keep. It's not as sophisticated as code conflict resolution, but it works for most design scenarios.

After merging, the branch is archived. You can access it from the file's version history if you need to go back.

Conflict resolution in practice

Conflicts in Figma happen at the layer level. If you renamed a component in your branch and someone else also renamed it in main, Figma surfaces that as a conflict. You choose which name wins.

The harder conflicts are structural — a component was reorganized in main while you were using it in a branch. Figma does its best, but you may need to manually reconcile some frames after merging.

The practical way to minimize conflicts: communicate with your team before branching off a shared component. If you know you're about to redesign the Button component, tell the team so nobody else starts making Button changes in main.

Try Figma

The plan limitation

Branching requires the Organization plan at $45/editor/month (billed annually). The Professional plan ($15/editor/month) doesn't include it. This is a real barrier for smaller teams.

If you're on Professional, your options are: manually duplicate files for explorations (accepting the merge-back limitation), or upgrade to Organization when your team is large enough to justify it. The break-even point is usually when you have multiple designers working on the same files regularly.

Teams doing serious design system work usually find the Organization plan worth it for branching alone.