Lesson 7 of 12

Wireframing

A wireframe is a simple, mostly grey sketch of a screen that shows what goes on it and where, without colours, images or final text. It sits between the structure you planned in information architecture and the clickable prototype you will build in the next lesson. Because wireframing is quick, you can explore several layouts and throw away the weak ones without regret.

Why start with wireframing?

  • Discussions stay on layout and content priorities, not on whether the blue is “too blue”.
  • Changes take minutes, not days.
  • Developers and stakeholders see the scope early.
  • You find missing content (an empty state, an error message) before visual design starts.

Fidelity levels

LevelLooks likeUse it when
Low fidelityHand sketches or boxes; placeholder lines for textExploring many ideas quickly, early in a project
Mid fidelityClean grey boxes in Figma, real headings and labels, correct spacingAgreeing on layout and content with the team
High fidelity (mockup)Final colours, type, images and iconsVisual design and developer hand-off

The blog post Wireframe vs mockup vs prototype explains these terms in more depth. In this lesson we focus on low and mid fidelity.

What to include

  • Real headings and button labels, even if body text is a placeholder. Words shape layout.
  • The main action on each screen, clearly marked.
  • Navigation (top bar, tab bar, back button).
  • Placeholders for images – a box with a cross is the usual convention.
  • States that are easy to forget: empty, loading, error and success.
  • Short notes beside the frame explaining behaviour, such as “list sorted by departure time”.

Watch out: Avoid “lorem ipsum” for headings and buttons. A button that says “Proceed to secure payment” needs much more room than “Pay”. Write realistic content early or your layout will break later.

Wireframing a screen in Figma, step by step

Let us wireframe the search results screen of a bus-ticket app.

  1. Press F (Frame tool) and choose a mobile preset from the right panel, for example a 360 × 800 Android frame.
  2. Add a top bar with the route (“Chennai → Madurai, Fri 14 Nov”) and an Edit link.
  3. Draw one bus result card: operator name, departure and arrival times, duration, seats left, fare, and a “View seats” button.
  4. Select the card’s contents and press Shift + A to add Auto layout. Set vertical direction, a gap of 8 and padding of 16.
  5. Turn the card into a component (Ctrl + Alt + K on Windows, Cmd + Option + K on Mac) so every copy updates together.
  6. Place several instances inside a vertical Auto layout list. Add filter chips (AC, Sleeper, Departure time) above it.
  7. Duplicate the frame to sketch the empty state (“No buses found – try another date”) and a loading state.

Tip: Auto layout behaves much like CSS Flexbox: direction, gap, padding and alignment. Learning one helps you understand the other. The Figma Auto layout guide on the blog goes further.

Spacing with an 8-point system

Even in grey wireframes, consistent spacing makes screens easier to read. Many teams use an 8-point system: every margin, padding and gap is a multiple of 8 (8, 16, 24, 32, 48…), with 4 used for very tight spots such as between an icon and its label. A small set of values means fewer random decisions, cleaner layouts and easier hand-off, because developers can map these values to a spacing scale in CSS.

ValueTypical use
4Icon to text, tight label spacing
8Between related items inside a card
16Card padding, screen side margins on mobile
24–32Between separate groups or sections
48+Between major page sections on desktop

Common wireframing mistakes

  • Adding colour and photos too early, which pulls feedback towards looks.
  • Designing only the happy path and forgetting errors and empty lists.
  • Drawing desktop only, when most users will be on a phone.
  • Making one version and defending it, instead of sketching two or three alternatives to compare.

Annotating and reviewing

Before moving on, walk through each wireframe with your persona in mind. Can Karthik see the fare and seats left without opening the card? Is the main action obvious? Add sticky-note comments for anything a developer must know. Then link the frames together – which is exactly what we do next in Prototyping in Figma.

Further reading

Key takeaways

  • Wireframes show structure and priority without colour or final visuals.
  • Use low fidelity to explore ideas, mid fidelity to agree on layout, high fidelity for visual design.
  • Use realistic labels and include empty, loading and error states.
  • In Figma, Auto layout and components make wireframes quick to build and change.
  • An 8-point spacing system keeps layouts consistent and easy to hand off.

Quick quiz

Check what you learned – pick an answer.

1. Why should headings and button labels be realistic in a wireframe?

2. In an 8-point system, which value would you most likely use for card padding?

3. Which Figma shortcut adds Auto layout to a selection?

Practice exercise

Wireframe the restaurant menu screen of a food-delivery app at mid fidelity in Figma: a header, category tabs, at least three dish cards built from one component, and an empty state for “No dishes match your filter”.

Show a hint

Build one dish card with Auto layout first, make it a component, then reuse it.

Show the solution

A good solution uses a 360-wide mobile frame with 16-pixel side margins. The header shows the restaurant name, rating, delivery time and a Veg-only toggle. Category tabs (Recommended, Starters, Main Course, Desserts) sit below it in a horizontal Auto layout row. Each dish card is an instance of one component: a veg/non-veg marker, dish name, short description, price, image placeholder and an “Add” button, with 8-pixel gaps and 16-pixel padding. A sticky “View cart” bar sits at the bottom. A second frame shows the empty state with a short message and a “Clear filters” button. All spacing uses multiples of 8 and the screen stays grey.

Progress is saved in this browser only.