Publishing. A library can hold components, styles, and variables. Libraries are only available on paid plans. When you publish an update, people using the library see a badge and can review and accept the changes.
Code syntax. Each variable can carry one code name per platform: Web, Android, and iOS. Set it to the exact name your codebase uses, so the token a developer sees in Figma is the token they type.
JSON in and out. Figma can import and export variable modes as JSON in the Design Tokens Community Group (DTCG) format. That format reached its first stable version, 2025.10, in October 2025, and the W3C community group lists Figma among the tools supporting it.
My own practice goes one step further. One source of truth generates everything. I author tokens in a build script, and it outputs both the Figma import files and the CSS. Figma is a read-only consumer: I do not invent variables inside Figma, because then the two sides drift. In the HeyOz system, the build fails if a semantic token contains a raw value, or if light and dark stop declaring the same names. That is the guarantee the system cannot quietly rot.
You do not need that setup on day one. Start with clean names and code syntax, and the pipeline can come later. For the handoff side, read my guide on design handoff to developers.