Figma Branching: How can we identify and resolve conflicts at the layer level?
Hi everyone,
I'm facing an issue with Figma's branching and merging workflow, and I'd like to know if anyone else has experienced the same problem or found a workaround.
Here's my situation: I've made some changes in a branch file, and another person on my team has made similar or identical changes in the main file. When I try to review and merge the branch, Figma identifies conflicts, but it doesn't provide enough detail to understand exactly what has changed or where the conflict is occurring.
Coming from GitHub, I expected something similar to a diff view, where I could compare both versions side by side and identify the exact changes. For example:
-
A fill color has changed.
-
A text property or font size has been modified.
-
A component property or variant has changed.
-
A layer has been added, removed, or modified.
Currently, Figma allows me to compare changes at the page level, but identifying the exact conflicting layers and properties is difficult. Even a tiny change can require me to inspect and revalidate an entire page manually.
This becomes a significant problem when working on a large design system, where a single page can contain hundreds of components, variants, and nested layers. Reviewing every page to find a small conflict takes considerable time and slows down the merging process.
My questions are:
-
Is there a way to view a detailed, layer-level diff between the main file and a branch?
-
Is there a plugin, API-based tool, or other workaround that can identify exactly which properties or layers are conflicting?
-
Can we resolve conflicts at the individual layer or property level instead of having to review large portions of a page?
-
If two people make identical changes independently, is there a way for Figma to recognize those changes and avoid unnecessary conflicts?
I'd love to hear from anyone who has encountered this issue, particularly those working with large design systems and complex component libraries.
I also hope the Figma team considers improving this workflow by introducing a more granular conflict-resolution interface, similar to the diff and merge tools available in Git.
Am I missing an existing feature, or is this a limitation others are struggling with as well?
Thanks in advance for any suggestions or workarounds!
