Figma Comment Thread Exporter
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
This userscript extracts all comment threads from the current Figma file and exports them in your choice of CSV, JSON, or Markdown format. It captures the full conversation including the original comment, author name, timestamp, resolved status, and all reply threads. The exported data is structured to preserve the hierarchical relationship between main comments and their replies, making it easy to review feedback, track design decisions, or share discussion summaries with stakeholders who don't have Figma access. You can choose to include or exclude resolved comments, add export timestamps, and customize the filename pattern.
WHERE IT RUNS
The script activates on all Figma file pages (www.figma.com/file/*, www.figma.com/design/*, www.figma.com/proto/*). It works within the Figma web interface, detecting comments as they load dynamically. The script automatically scans the comments panel and updates the thread count as you scroll or as new comments appear.
HOW TO USE
After installation, navigate to any Figma file and open the comments panel. The script adds a draggable panel with export controls. Select your preferred export format (CSV for spreadsheets, JSON for data processing, or Markdown for readable documentation). Configure options including whether to include resolved comments, add timestamps, and auto-open the exported file. Click the export button and the script will scan all visible comment threads, extract the data, and download the file. The progress bar shows the extraction status, and a flash message confirms completion.
THE ACTUAL REASON IT WORKS
Unlike browser extensions that rely on Figma's official API, this script performs real-time DOM scraping combined with structural reconstruction of the comment hierarchy. It uses a multi-selector fallback strategy to locate comment threads regardless of Figma's frequently changing class names, identifying threads by a combination of data attributes, class patterns, and text content heuristics. The script then reconstructs the parent-child relationships by traversing the DOM tree and identifying nested comment structures through visual indentation and container relationships. This approach works without API keys or authentication requirements, and extracts data even when comments are partially loaded through infinite scroll.
THE PANEL
The panel is fully draggable by its header and remembers its position across page loads using GM_setValue. It collapses to a small icon when minimized, preserving screen space. Press Escape or click the × button to dismiss the panel. The panel includes a live comment counter that updates as you scroll through the comments panel, a progress bar during export, and a status flash area for feedback on actions.
PLEASE NOTE
This userscript requires the free BotGentz extension to run. Figma frequently updates its interface; we maintain the script to adapt to structural changes. The script reads only the visible comments in the comments panel - ensure all comment threads are loaded by scrolling through the panel before exporting. The script does not send any data to external servers; all processing occurs locally in your browser. For large comment threads, export may take a few seconds depending on your browser's performance. The script respects Figma's UI and does not modify any page content beyond adding the export panel.