Writing toolkit

In this section, you’ll find most of what you need to use Figma as a UX writer—both technical tips for using the tool, and Figma-fied versions of our classic UX writing processes. It’s not an exhaustive list, but it should be enough to help you tackle most of your day-to-day tasks. These aren’t necessarily the best ways to do things, but they’re useful jumping off points to get you started.

Now, Figma isn’t a text editor—if you try to use it like one, you’ll be disappointed. Instead, think about how Figma’s visual, collaborative format could help you achieve what other tools couldn’t. The tips below aren’t necessarily 1:1 recreations of what you’re familiar with, but they achieve many of the same goals while making use of Figma's unique strengths.

To get the most out of these tips:

  1. Follow along in the companion file. It’s got visual examples and tutorials for every idea in this section, broken out by each subheading
  2. If you’re brand new to Figma, take ~15 minutes to skim through our Explore ideas and Create designs tutorials (or at least have them open for reference)

With that, let’s dive on in!

Creating space

Let’s start at the top, before you do any writing. Because you’ll spend most of your time in your design partners’ files, it’s worth taking time to figure out where you’ll work your magic.

Sometimes you’ll work right alongside your designer, editing strings in their latest flows. But when you need to embrace chaos and make a word-mess, I’d recommend one of two options:

1. Create a separate page in the design file

This one’s great for collaboration—it gives you a space to make a mess, while keeping it accessible to designers. Since it’s in the same file, they can easily pop into your page, provide feedback, and snag your final copy. You can even ask them to drop new screens into your page, so you know what to focus on.

A Figma file showing pages on the lefthand side, and instructions on how to organize your file on the righthand side.

I’d recommend naming your page something obviously work-in-progress (like “Copy scratchpad” or “Ryan’s dumpster fire”) and dragging it down towards the bottom of the pages list, so other teammates know it’s not for reference.

2. Create your own working file

Go this route if you prefer to let loose in private. In a separate file, you can get all those ideas—the good, the bad, the both-good-and-bad—out of your brain and onto Fig-paper. When you’re ready to share your best ideas, just drop a copy of them into your designer’s file—either in a dedicated copy page (like above), or adjacent to the relevant designs.

A Figma file showing pages on the lefthand side, and instructions on how to organize your file on the righthand side.

Better yet, this option makes it easy to keep track of everything in one place. I have a “Design sandbox” file with pages for every project I’m working on. I typically create one page for random writing (the garbage pile in the screenshot below), and individual pages for every project I’m working on. Each page has all my old ideas and final strings, so I can easily reference them when I need to. And every quarter or so, I create a fresh file to work from and archive the old one.

A Figma file showing a bunch of different shapes and images scattered across the canvas.

Selecting what you need

When it’s time to write and you want to riff in a separate page or file, you’ll need to select, copy, and paste a bunch of designs. Sometimes that’s easy—you might be able to drag and select everything, or copy one big frame with all the designs. But if you’re trying to select one or a handful of layers, it gets pretty tricky. Fortunately, we have a few tools to make it easier.

1. Deep select

If you’ve ever had to double click 20+ times to select a string, this tip’s for you.

It’s more common than not for a string to be nested within a bunch of frames, many layers deep. By default, Figma assumes you want to select the top-most layer—but you can tell Figma to select the deepest layer instead, using what we call deep select.

To use deep select, just hold Command (macOS) or Control (Windows), and hover over the string you want to select. By holding that key, Figma highlights and lets you select the deepest visible layer under your cursor.

Alternatively, you can right click anywhere on the canvas, and use Select layer to select anything in that general area.

2. Select multiple layers

When you only want to select a few things in a big pile of layers, you can use a keyboard shortcut to select multiple layers.

To use it, just hold Shift, and click each layer you want to copy. By holding Shift, Figma maintains all previously selected layers as you select more.

3. Combine them!

To select multiple, deep layers, you can just combine the two tips above.

Let’s say I want to copy a few text layers from our sharing modal. In this modal, the strings each sit a few layers below the top frame, so I can’t just Shift + click each of them.

First, I use deep select to select one of the strings. As I hover over the next text layer, I use both deep select and multi-select at the same time—either Command + Shift or Control + Shift—and voila!

4. Use the Find tool

You can also use the Find tool to search for a layer and select it. Just hit Command + F (macOS) or Control + F (Windows) to open the tool and start searching. Once you’ve found what you’re looking for, double click the search result to select the layer on the canvas.

To find a string, enter and search for the string itself. To find any other layer, you’ll need to know the name of the layer. Components are typically named what you’d expect them to be—like “Button” for a button, or “Lock” for a lock icon. (If not, file a notarized complaint with your design systems person.)

If you want to filter your search results by layer type—text, frame, component, etc.—click the settings button (to the right of your search term, next to the X) and select the type of layer you’re looking for. In that same settings menu, you can also select:

  • Match case. Only show results that match the exact casing of your search.
    • E.g. Find results for “FigJam,” but not “figJam,” “figjam,” etc.
  • Whole words. Filter out any partial matches.
    • E.g. Find results for “Any,” but not “anyone,” “anybody,” etc.

Noodling on strategy

Figma makes it much easier for UX writers to demonstrate one of our greatest skills: seeing the bigger picture. Before you start writing, try mapping out a single key message for each part of the project or step of the flow. It requires some extra effort, but will benefit you in two big ways.

First, it forces alignment. It doesn’t really matter if your first stab at this is right or wrong—by giving your team something to react to, they’ll naturally start to align on a general strategy. With that alignment, you can start crafting the actual copy.

Second, it keeps feedback grounded. When you ultimately review your copy with the team, you can point back to that strategy to justify your decisions, and reviewers can use it to evaluate the work. As a result, you’re more likely to get feedback that’s grounded in shared understanding, not personal opinion.

Three columns showing a tip with a Scenario, Message, and link out to plugins.

In practice, I put those key messages above or below each screen in the flow. I also tend to write in first person (like I’m Figma), and try to make them as opinionated as possible. They don’t need to match what you would actually put in the product—they just need to capture the intent of the screen. Some examples:

  • “We have three plans for you, designer. They cost this much. Pick one.”
  • “Hey, developers—try this new feature. Here’s why you should."
  • “You don’t have access to this file for this specific reason. Ask this person for access.”

There’s no right way to do this, but I recommend doing some sort of alignment activity before getting too deep into the words. It’ll make your life easier, I promise.

Riffing on copy

Once you have strategy nailed down, you can start riffing—or brain-dumping, word-vomiting, string-spewing… whatever wets your whistle. It’s not quite as simple as it would be in a text editor, but riffing in Figma ultimately makes it easier to work within the context and constraints of the designs.

I typically use one of two methods to quickly generate copy ideas.

1. Duplicate it

While you could write all your ideas in a single text layer (like a bulleted list), that leaves you with one big block of text. Ideally, you want to have a bunch of individual layers that can move around, organize by theme, stack rank, etc.

The easiest method for doing that is to duplicate the same layer over and over. You can do this with an individual string, a whole component, or an entire screen. Here’s how:

  • Hold down Option (macOS) or Alt (Windows), and hover over the layer until a second cursor pops up next to your main cursor
  • Click and hold the layer
  • Drag it to wherever you want to put it
  • Let go of your click—if you let go of Option/Alt first, it won’t work

Rinse and repeat for every new idea you’ve got. When you’re done, you can quickly organize all your ideas using Figma’s alignment tools.

2. Figma > FigJam

A fun, semi-hidden trick: You can copy/paste most frames from Figma into FigJam—our delightfully simple whiteboard tool—and still edit the copy within them. Because FigJam’s a bit more flexible and forgiving than Figma, some writers find it easier to use.

FigJam’s sticky notes are perfect for those who prefer more traditional writing tools. Just like the duplication method, write one string per sticky note—that way they’re easier to move around and organize when you’re ready to start trimming things down.

If you prefer to riff by hand, check out the FigJam iPad app. You can use it with a stylus (like an Apple Pencil) to doodle around, and then switch back to your laptop to clean things up.

3. FigJam > Figma

That copy/paste magic from Figma to FigJam? It goes both ways! You can snag a sticky note from FigJam and paste it into Figma for easier writing—riffing, note-taking, annotating… whatever you need to do.

The same goes for FigJam’s stamps, stickers, diagrams, etc. Not everything works exactly how it should, but if it’s in FigJam, you can at least paste it into Figma.

Regardless of which method you use, keep your eyes peeled for those red spell check squiggles. In Figma and FigJam, spell check only flags typos while you’re actively writing—so make sure to take advantage of those suggestions as you go. (I get into a bit more detail on spell check later on, in the Cleaning up chunk of this section.)

Editing strings

To edit copy in actual designs—for riffing or dropping in final strings—just do what we’ve already discussed: Deep-select the text layer, hit Return to highlight the text itself, and start typing.

What about components? Same deal. While they’re designed not to be editable, text is the exception. You can edit a component’s text just like you would any other text—select, Return, and type.

Now, there may be times when a component isn’t configured in a way that makes it easy to add text. Maybe you’re writing a CTA, and the button’s too small for your string. In cases like that, you can do two things:

1. Detach it

You can make a component instance editable by detaching it—or disconnecting it from the main component. To detach, just right click the instance, and select Detach instance.

If you’re working with a button that’s not quite wide enough, you can detach it, and add a bit more space. If an entire screen is a component, you can detach it in order to more easily move content around.

2. Talk to your designer

If you feel strongly that you need more or less space for copy than the component allows for, have that conversation with your designer. It’s possible the component was designed with intentional rigidity (e.g. to enforce a hard character count)—but it might be that it wasn’t built with flexibility in mind, and a longer string is totally fine.

Before that chat, I’d recommend detaching the instance and designing your ideal component. With a concrete example, your designer can better understand the issue.

That’s really all you need to know for day-to-day string editing. Once you’re more comfortable, you can learn to create and use components yourself in the “Power tools” section of this guide.

Cleaning up

When it’s time to wrap things up, you’ll want to make sure your final copy has made it into the final designs. You could go line-by-line—checking every word, updating every string—or you could use a few of Figma’s wordy tools.

1. Spell check

Figma’s spell check feature can help you catch any unfortunate typos—but it works a bit differently than it does in text editors. Instead of seeing red squiggles everywhere, you’ll only see them when you’re actively editing a string.

When you spot a squiggle, right click it to see a few suggestions. In that same menu, you can also change your language preferences, and run text review plugins that can check grammar, reading level, and more. (Magician can even help you break through writer’s block. It’s the future, y’all!)

When it comes to spell-checking other languages, I recommend installing the Figma desktop app. Having the desktop app installed gets you all the languages supported by your OS—on both desktop and web. So even if you only use Figma in a browser, installing the app gets you more languages.

2. Find (and replace!)

You can use the Find tool to look up specific strings or terms that might need updating—like a call-to-action that you changed halfway through the project, or a branded term that could be capitalized incorrectly.

To use the tool, hit Command + F (macOS) or Control + F (Windows) and enter a term, a phrase, or an entire string. From there, you can click each search result to navigate to that layer on the canvas. If you want to update that string, you can double click the search result to start editing.

To update multiple strings at once, click the settings button (to the right of your search term, next to the X) and select Replace. Then enter the replacement string, and click Replace to update the selected search result, or Replace all to update every result.

In that same settings menu, you can also select:

  • Match case. Only show results that match the exact casing of your search.
    • E.g. Find results for “FigJam,” but not “figJam,” “figjam,” etc.
  • Whole words. Filter out any partial matches.
    • E.g. Find results for “Any,” but not “anyone,” “anybody,” etc.

Handing off

You might also need to provide extra context: multiple string variants, context for an A/B test, localization notes, etc. You could use comments, but I’ve found they aren’t the best for permanently housing critical information.

Instead, add that context directly on the canvas, so it’s always visible. Depending on the stage of the project, you can use one of two methods.

(Quick disclaimer: Designers often provide their own context for handoff, like paddings, color details, etc. If you see notes already on the canvas, chat with your designer about how you should add yours.)

1. Create annotations

An annotation is really just a blob of text that provides additional detail, and can take any form you want it to. It could be bright pink text, a sticky note you copied over from FigJam, etc.—anything that draws attention, and is clearly attached to a specific design element.

A text box says "Truncation + localization," and it points to a phrase that says, "Copied 4 frames over to {%file.name}.

The annotation I use (in the “Annotations” page of the companion file) is like a thought bubble with a header, body, and name, and sports an arrow that I can move to whatever side I need it to. And it’s got different statuses, so my design partners know what’s final and what needs their review.

There’s also a handy annotation widget, which you’ll find later in this post. Whatever you use, just make sure it’s clear and obvious.

If you need to provide a ton of context, you can always create a dedicated “copy handoff” page.

Just copy over the designs you want to mark up, and add all your notes. Then go back to the final designs page, and add text links (like “Copy details here”) so your designer and developers can easily find them. (Or use a navigation widget like this one from Emin Sinani.) It also can’t hurt to tag anyone who might need those details in a comment on your page.

3. Prepare the dreaded copy doc

If your developers, marketers, lawyers, etc. don’t use or prefer not to use Figma, you might still have to create a copy doc. (Sigh…)

The easiest way to do that is to use the CopyDoc Text Kit plugin. It lets you export strings from specific frames or pages as a .csv file, which you can then import to Sheets, Excel, etc. It’s not perfect, but it should save you a good chunk of time.

Playing to Figma’s strengths

All of the tips and tricks above will help you in your day-to-day life as a UX writer, but Figma is most powerful when you make it your own. As you get comfortable, explore different ways of doing things—use Figma’s strengths to make your processes easier and more powerful. It might be a bit painful at first, but moving more of your work into Figma gives you a better chance to collaborate with your design team.

Once you’ve practiced and nailed down the basics of Figma, continue on to the next section, where I’ll show you how to use Figma’s most powerful features for UX writing.