How-To2026-09-1111 min read

How to Create a Responsive Prototype in Figma

Static mockups at a single screen size are no longer sufficient for modern product development. Stakeholders want to see how a design works on mobile, tablet, and desktop. Engineers need to understand responsive behavior before writing CSS. And user testing on a fixed-width prototype misses the real-world experience where people resize browsers and switch between devices.

Figma's auto layout, constraints, and component variants make it possible to build prototypes that genuinely respond to different screen sizes. Combined with Figma's prototyping tools for interactions and transitions, you can create something that feels close to a real product without writing any code. This guide covers the full workflow from structuring your frames for responsiveness to adding interactive flows.

Step-by-step guide

01

Set up your responsive frame structure

Start by creating three top-level frames representing your target breakpoints: Mobile (375px wide), Tablet (768px wide), and Desktop (1440px wide). Set all three to 'Hug contents' for height so they grow with content. Inside each frame, create a main container with auto layout set to vertical direction, 'Fill container' for width, and appropriate padding (16px for mobile, 24px for tablet, 32px for desktop). This container will hold all your content sections.

  • Create a 'Breakpoints' page in your Figma file dedicated to the responsive prototype
  • Name your frames clearly: 'Desktop - Home', 'Tablet - Home', 'Mobile - Home'
  • Set the outer frame fill to your background color and apply consistent padding
02

Build responsive components with variants

Create components that have variants for each breakpoint. For example, a navigation bar component should have a Desktop variant (horizontal links), Tablet variant (condensed with some items in overflow), and Mobile variant (hamburger menu). Use auto layout inside each variant so the component responds to content changes. Name variants consistently using the pattern 'Breakpoint=Desktop, State=Default' so swapping between them is straightforward.

  • Start with your most complex component (usually navigation or hero section)
  • Create variants using a 'Breakpoint' property with values: Desktop, Tablet, Mobile
  • Add a 'State' property for interactive states like Default, Hover, Active, and Expanded
03

Implement auto layout for fluid behavior

Auto layout is the backbone of responsive Figma prototypes. Set every container to auto layout with the appropriate direction (vertical for page sections, horizontal for row content). Use 'Fill container' for elements that should stretch to fill available width and 'Hug contents' for elements that should only be as wide as their content. Set gap values between items rather than using spacer frames. For truly fluid layouts, use the 'min width' and 'max width' constraints on auto layout children.

  • Apply auto layout to every frame — never use absolute positioning for content elements
  • Set text elements to 'Fill container' width so they reflow at different breakpoints
  • Use min-width on cards and grid items to control when they wrap to a new row
04

Create responsive grids and card layouts

For content grids (like feature cards or product tiles), use a horizontal auto layout with wrap enabled. Set each card to a fixed min-width (e.g., 280px) and 'Fill container' for width. The cards will automatically wrap to fewer columns as the container narrows. For the gap between cards, use the same value horizontally and vertically (typically 16px or 24px). This approach means one component instance works across all three breakpoints.

  • Enable 'Wrap' on the horizontal auto layout containing your grid items
  • Set card min-width to prevent cards from becoming too narrow to read
  • Test the grid by manually resizing the parent frame to verify proper wrapping behavior
05

Add interactive prototype flows

Switch to Figma's Prototype tab and connect your frames into interactive flows. Link the desktop frames together for the desktop flow, tablet frames for tablet, and mobile frames for mobile. Use Smart Animate as the transition type between frames that share similar layer names — Figma will automatically animate the differences. For interactions like dropdown menus and modals, use component variants with interactive state changes rather than separate overlay frames.

  • Create a flow starting point for each breakpoint (Desktop Flow, Tablet Flow, Mobile Flow)
  • Use Smart Animate with 300ms ease-in-out for page transitions
  • Use 'Change to' interactions on component variants for hover states and toggles
06

Add realistic content and micro-interactions

Replace placeholder text and images with realistic content. Use the Content Reel plugin to populate text fields with real-looking names, emails, and descriptions. Add subtle micro-interactions: button hover states, input field focus states, loading indicators on action buttons, and scroll-based reveals for long pages. These details make the prototype feel real during user testing and help engineers understand the intended interaction design.

  • Replace all 'Lorem ipsum' with realistic content that matches your actual use case
  • Add hover states to all interactive elements (buttons, links, cards)
  • Include loading and success states for form submissions and async actions
07

Test across breakpoints and share for feedback

Preview each flow in Figma's presentation mode. Test the desktop flow on your monitor, the tablet flow in a resized browser window, and the mobile flow using Figma's device frame option or the Figma Mirror app on your phone. Check that text remains readable, touch targets are large enough on mobile (minimum 44px), and no content is clipped or overlapping at any breakpoint. Share the prototype link with stakeholders and include instructions for which flow to view on which device.

Common mistakes

Using absolute positioning instead of auto layout

Absolute positioning makes elements stay in a fixed position regardless of screen size, which breaks responsiveness entirely. Use auto layout for all containers so elements reflow naturally. The only acceptable use of absolute positioning is for overlay elements like floating action buttons or toast notifications.

Building one frame and manually resizing for each breakpoint

Manually resizing a single design for each breakpoint creates three independent designs that are painful to keep in sync. Instead, build responsive components with variants and swap the breakpoint variant at the component level. Changes to the base component then cascade automatically.

Ignoring touch target sizes on mobile

Buttons and links that are comfortably clickable with a mouse cursor are often too small for finger taps. Every interactive element in your mobile prototype must be at least 44x44 pixels. Test with Figma Mirror on an actual phone to feel whether targets are appropriately sized.

Over-complicating prototype interactions

A prototype meant for user testing does not need every edge case and animation. Focus interactions on the core flow you are testing. Trying to make the prototype handle every possible user action creates maintenance burden and often introduces confusing dead-ends when users tap something that is not wired up.

Tips

Use Figma's 'Resize to Fit' shortcut (Ctrl/Cmd + Shift + R) frequently to see how your auto layout frames respond to content changes.

Create a shared 'Spacing' and 'Breakpoint' style guide page in your file so all designers use consistent values across responsive variants.

Use the 'Absolute position' option within auto layout sparingly — it is useful for overlay badges and floating elements that need to anchor to a corner.

Record a walkthrough video of your prototype in presentation mode to accompany the share link so stakeholders know exactly how to navigate the demo.

How Vantage helps

Vantage integrates directly with Figma, allowing product teams to import designs and prototypes into the product workspace. When writing PRDs and generating requirements, Vantage can reference your Figma designs so that every specification is connected to the visual design it describes, eliminating the gap between design intent and implementation requirements.

Frequently asked questions

Spend less time on setup, more on decisions

Vantage connects your tools and generates specs grounded in real data. Free to start.

Free to start. No credit card required.

Related reading