Guides

Vibe Coding with AI: How to Describe Layouts That Actually Work

6 min read

Here's the difference between a vibe coder who gets generic output and one who gets exactly what they want: about 20 lines of text.

Not a better tool. Not a premium plan. Just a different way of describing what you want before you hit send.

Why your AI keeps giving you generic layouts

Type "build me a SaaS dashboard" into v0, Bolt, or ChatGPT. You'll get a dashboard back. It'll have a sidebar, a header, some cards, maybe a chart. And it will look almost identical to the output every other person got when they typed the same sentence.

That's not the AI failing. It's the AI doing exactly what you asked. You gave it a category name, so it returned the average of that category — every dashboard it's ever processed, blended together into something that contains all the right parts and none of your specifics.

No nav items. No metric names. No column headings. No information hierarchy. You described a type, not a thing. So the model gave you the type back.

This isn't a hard problem to fix.

The fix — describe each section, one at a time

Instead of naming a layout type, list every section of the page in order. For each section, say what kind of component it is, what data it shows, and roughly where it sits.

That's it. That's the whole method.

Here's what it looks like for a SaaS analytics dashboard:

Create a SaaS analytics dashboard. Include:

- Fixed left sidebar (240px): logo at top, nav links (Dashboard, Analytics, Revenue,
  Users, Settings), user avatar + name at bottom. Collapsible on mobile.
- Top header: page title left, global search center, notification bell + avatar right.
- 4 KPI cards: Total Revenue ($124,500, +12%), Active Users (8,320, +4%),
  Churn Rate (2.1%, -0.3%), MRR ($10,375, +8%). Each with icon, sparkline,
  and colored change badge.
- Full-width line chart: "Revenue Over Time" (12 months) with Revenue/MRR toggle.
- Two columns below: "New Signups by Week" bar chart left, "Top Plans" donut right.
- "Recent Transactions" table: User, Plan, Amount, Date, Status. Pagination.

White background, zinc-100 cards, blue accent, Inter font. Fully responsive.

That prompt — pasted into v0 — produced a correct layout on the first try. Sidebar pinned left, four KPI cards in a row, chart taking full width, then two charts side by side, then the table. Sections came out in the right order because the prompt listed them in the right order.

The full version with exact values and responsive behavior is in SaaS Analytics Dashboard.

Level up — use a mockdown

A mockdown is a text wireframe. Brackets name the components, indentation shows nesting. Takes about five minutes to write. Here's the one for that same dashboard:

[HEADER]
  [Logo] [Search: "Search..."] [🔔 Notifications] [Avatar: JD]

[SIDEBAR — left, fixed]
  ● Dashboard (active)
  ○ Analytics
  ○ Revenue
  ○ Users
  ○ Settings
  [Avatar] John Doe / Admin

[MAIN CONTENT]
  [KPI CARDS — 4 cols]
  Total Revenue | Active Users | Churn Rate | MRR

  [CHART — full width]
  Revenue Over Time (line, 12mo) | [Revenue ▾] [MRR] toggle

  [TWO COLUMNS]
  New Signups by Week (bar) | Top Plans (donut)

  [TABLE — Recent Transactions]
  User / Plan / Amount / Date / Status
  [Pagination]

Paste this before your code prompt. The AI treats it as a contract. Components go where you put them. Hierarchy is preserved. You're not hoping the model will guess what "dashboard" means.

Here's the same format for a landing page, drawn from SaaS Product Landing Page:

[NAV — sticky]
  Logo | Features  Pricing  Blog  Customers | [Log in] [Start free trial →]

[HERO — centered]
  "Ship projects faster, together."
  [Start free — no credit card]  [Watch demo →]
  Trusted by: [Stripe] [Linear] [Notion] [Figma] [Vercel]
  [App screenshot / browser mockup]

[FEATURES — 3×2 grid]
  Task Mgmt | Real-time Chat | File Sharing
  Timeline View | Automations | Reporting

[TESTIMONIALS — 3 cards on gray band]

[PRICING — 3 cards]
  Starter ($19) | Pro ($49, highlighted) | Enterprise (contact)

[FOOTER CTA]
[FOOTER — 4 columns]

Write one of these before you open the tool. The AI doesn't need creativity. It needs a checklist.

One more thing worth knowing: mockdowns are also useful for iteration. When the first output is 80% right, you can edit two lines of the mockdown and re-prompt just for that section. You're not starting over — you're pointing to the part that needs updating. That loop is much faster than describing the change in natural language and hoping the model doesn't touch anything else.

Three prompts to try right now

Dashboard:

Create a SaaS analytics dashboard. Fixed 240px sidebar: logo, nav (Dashboard,
Analytics, Revenue, Users, Settings), user avatar at bottom. Top header: page title,
global search, notification bell, avatar. 4 KPI cards with sparklines and change
badges: Total Revenue, Active Users, Churn Rate, MRR. Full-width Revenue Over Time
line chart. Two-column row: bar chart + donut chart side by side. Recent Transactions
table with pagination.

Full prompt + mockdown → SaaS Analytics Dashboard

Landing page:

Design a SaaS product landing page. Sticky nav: ghost + solid CTA buttons right.
Hero: bold centered headline, two CTAs, social proof logo row, browser mockup below.
Feature grid: 3 cards × 2 rows, each with icon + title + description. Testimonials
band: 3 quotes on gray background. Pricing: 3-tier cards with checkmark lists.
Footer CTA banner. 4-column footer.

Full prompt + mockdown → SaaS Product Landing Page

Pricing page:

Build a SaaS pricing page. Centered header with monthly/annual toggle that shows
a "Save 20%" badge. 3 plan cards: Starter ($19/mo), Pro ($49/mo, blue border +
"Most popular" badge), Enterprise (custom). Full-width feature comparison table.
FAQ accordion, 5 questions. Bottom CTA band: "Talk to a human" + book demo button.

Full prompt + mockdown → Three-Tier Pricing Page

What to do when the first output isn't right

Don't re-prompt the whole page. Find the section that's wrong and say exactly what needs to change.

These work:

  • "Make the sidebar collapsible on mobile — it should become a bottom tab bar, not a drawer"
  • "Change the two-column chart row to a single full-width bar chart"
  • "Add a fifth KPI card: Conversion Rate (3.4%, +0.2%)"

These don't:

  • "This doesn't look right, can you fix it?"
  • "Make it more polished"
  • "Try again with a better design"

Specific asks get specific results. The same rule that made the original prompt work keeps working on every round of iteration. Each follow-up is just another section description aimed at a smaller target.

If you want ready-to-paste prompts for 20 different layout types — dashboards, landing pages, e-commerce, auth, settings, and everything in between — 20 Vibe Coding Prompts has all of them. For a tool comparison using this exact method, read Vibe Coding Tools Compared or Best Vibe Coding Tools.

The prompt is where the result comes from. Get that right and the tool becomes almost interchangeable.

Related Layout Prompts

┌──────────┬────────────────────────────────────┐
│ ☰ Menu   │  ◉ Dashboard        🔔  👤        │
│          ├────────────────────────────────────┤
│ ● Home   │  ┌────────┐ ┌────────┐ ┌────────┐ │
│ ○ Stats  │  │ ▲ 1,234│ │ ● 87%  │ │ $9.4K  │ │
│ ○ Users  │  │ KPI ···│ │ KPI ···│ │ KPI ···│ │
│ ○ Config │  └────────┘ └────────┘ └────────┘ │
│          │  ┌──────────────────────────────┐  │
│          │  │  📈 Chart                    │  │
│          │  │  ╱╲    ╱╲  ╱╲               │  │
│          │  │ ╱  ╲╱╱  ╲╱  ╲╱───          │  │
│          │  └──────────────────────────────┘  │
│          │  ┌──────────────────────────────┐  │
│          │  │  Name    Role     Status     │  │
│          │  │  ─────   ─────   ────────   │  │
│          │  │  Alice   Admin    ● Active   │  │
│          │  │  Bob     User     ○ Idle     │  │
│          │  └──────────────────────────────┘  │
└──────────┴────────────────────────────────────┘
Dashboard

SaaS Analytics Dashboard

A full-featured analytics dashboard with KPI cards, revenue charts, user activity tables, and a collapsible sidebar nav — ideal for SaaS admin panels.

--analytics--kpi--charts
Complex
┌───────────────────────────────────────────────┐
│  Logo        Features  Pricing  ◆ Get Started │
├───────────────────────────────────────────────┤
│                                               │
│         Build something amazing.              │
│      The fastest way to ship your app.        │
│                                               │
│    [ Get Started ]    [ Learn More → ]        │
│                                               │
├───────────────────────────────────────────────┤
│  ┌───────────┐ ┌───────────┐ ┌───────────┐   │
│  │  ⚡ Fast  │ │  🔒 Safe  │ │  📦 Easy  │   │
│  │  Feature  │ │  Feature  │ │  Feature   │   │
│  │  desc...  │ │  desc...  │ │  desc...   │   │
│  └───────────┘ └───────────┘ └───────────┘   │
├───────────────────────────────────────────────┤
│  "Loved by 10,000+ developers" ★★★★★         │
├───────────────────────────────────────────────┤
│  Logo · Twitter · GitHub · © 2026             │
└───────────────────────────────────────────────┘
Landing Page

SaaS Product Landing Page

A conversion-focused SaaS landing page with a hero section, feature grid, social proof, pricing preview, and a sticky CTA — built to drive sign-ups.

--hero--cta--features
Medium
┌───────────────────────────────────────────────┐
│        Simple, transparent pricing.           │
│    [ Monthly ]  ○ Annual (save 20%)           │
├───────────────────────────────────────────────┤
│ ┌─────────────┐┌─────────────┐┌─────────────┐│
│ │   Starter   ││  ★ Pro ★    ││ Enterprise  ││
│ │             ││  (popular)  ││             ││
│ │   $9/mo     ││   $29/mo    ││   $99/mo    ││
│ │             ││             ││             ││
│ │ ✓ 5 users   ││ ✓ 50 users  ││ ✓ Unlimited ││
│ │ ✓ 1GB       ││ ✓ 10GB      ││ ✓ 100GB    ││
│ │ ✓ Email     ││ ✓ Priority  ││ ✓ Dedicated ││
│ │ ✗ API       ││ ✓ API       ││ ✓ Custom   ││
│ │             ││             ││             ││
│ │ [ Start ]   ││ [ Start ]   ││ [ Contact ] ││
│ └─────────────┘└─────────────┘└─────────────┘│
│                                               │
│       FAQ  ·  Compare Plans  ·  Contact       │
└───────────────────────────────────────────────┘
Pricing

Three-Tier SaaS Pricing Page

A clean three-tier pricing page with monthly/annual toggle, feature comparison table, plan highlight, FAQs, and a final CTA — optimized for SaaS conversions.

--pricing--plans--toggle
Medium