UI/UX for GTM
Overview
GTM tools live or die on usability. A landing page with beautiful design that
converts at 1% loses to an ugly page converting at 4%. The mistake: designing
for aesthetics over conversion, or for desktop over mobile, or for perfect
vision over real-world accessibility. This skill covers UI/UX patterns for
every GTM surface — landing pages, forms, signup flows, dashboards, and
onboarding — with a ruthless focus on conversion, accessibility, and mobile
performance.
When to Use
Trigger phrases: "design a landing page UI", "audit our form UX", "improve
signup flow conversion", "design a GTM dashboard", "make our pages accessible",
"mobile-first GTM design", "conversion rate optimization", "form design",
"onboarding UX", "WCAG compliance"
Authoritative Foundations
Nielsen Norman Group — 10 Usability Heuristics
- Visibility of system status
- Match between system and real world
- User control and freedom
- Consistency and standards
- Error prevention
- Recognition rather than recall
- Flexibility and efficiency of use
- Aesthetic and minimalist design
- Help users recognize, diagnose, and recover from errors
- Help and documentation
Baymard Institute — Form UX Research
- Average form abandonment rate: 68%
- Every field removed increases conversion by 5-10%
- Inline validation reduces errors by 22%
- Single-column forms outperform multi-column by 15%
Steve Krug — Don't Make Me Think
"Don't make me think" is the first law of usability. If a user pauses to
figure out what to do next, the design has failed.
Step-by-Step Process
Phase 1: Landing Page Architecture
Conversion-first landing page structure (top to bottom):
Hero (above fold — 3 seconds to communicate value):
- Headline: The outcome, not the feature. "Close more deals" > "CRM software"
- Subhead: One sentence. "Automate prospecting and enrichment so your team
spends time selling, not researching."
- Hero image: Product screenshot (real, not illustration) or demo video
- Primary CTA: "Start free trial" or "Get a demo" — one CTA only
- Secondary link: "See how it works" (for people not ready to commit)
Social proof (immediately after hero):
- Customer logos (5-8 recognizable names)
- Key stat: "Used by 2,000+ sales teams"
- Testimonial: One quote from a named customer with photo
Value props (3-5, each with visual):
- Icon + headline + one sentence each
- NOT "Feature list." Outcome: "Find emails instantly" > "Email finder"
How it works (3 steps):
- Visual: screenshot or diagram per step
- Keep it 3 steps. More = overwhelming.
Detailed features (for comparison shoppers):
- Expandable sections or tabs
- Comparison table: you vs alternatives
Pricing (if self-serve):
- 3 tiers, one recommended
- Annual default, monthly option
- "Start free trial" CTA on each tier
FAQ (address top 5 objections):
- "Do I need a credit card?" → "No, 14-day free trial, no card required."
- "Can I cancel anytime?" → "Yes, no contracts, no questions."
Final CTA:
- Same as hero CTA (consistency)
- "Join 2,000+ teams already using [product]"
Mobile considerations:
- Stack columns vertically (single column on mobile)
- CTA visible without scrolling (sticky CTA on mobile)
- Touch targets: minimum 44×44px (Apple HIG)
- Forms: use appropriate input types (tel, email, number) for right keyboard
Phase 2: Form Design
The 8 rules of high-converting forms:
Fewest fields possible. Every field is a friction point. Start with:
Email only. Add more fields via progressive profiling AFTER signup.
Single column layout. Multi-column forms confuse users about field
order. Users scan vertically. Single column always.
Top-aligned labels. Labels above fields (not left-aligned) reduce
completion time by 50% (Google/EYE tracking studies).
Inline validation. Validate as user types, not after submit.
- Valid: green checkmark
- Invalid: red border + error message below field
- Error message must say: what's wrong + how to fix it
Clear error messages (not vague):
- BAD: "Invalid email" → GOOD: "That doesn't look like an email address.
Use format: person@example.com"
- BAD: "Password too short" → GOOD: "Password must be at least 8 characters.
You entered 5."
Appropriate input types:
type="email" for email fields (mobile keyboard shows @)
type="tel" for phone (numeric keypad)
type="number" for quantities
type="url" for website fields
No placeholder as label. Placeholder text disappears on focus. Users
forget what the field was for. Use a real label above the field.
Optional vs required labeling:
- Mark required fields with an asterisk and label: "Email *"
- OR mark optional fields with "(optional)" — only one approach per form
- Don't mix: "Email *" and "Phone (optional)" on the same form
Form field reduction patterns:
| Current State |
Improvement |
Fields Saved |
| First Name + Last Name |
Full Name |
1 |
| Separate address fields |
Address lookup (Google Places API) |
4-5 |
| Company + Company Size |
Company name only (size from enrichment) |
1 |
| Phone Number |
Remove (get later via progressive profiling) |
1 |
Phase 3: Signup and Onboarding Flow
Signup flow:
- Email → Password → "Create account" (3 fields max)
- Verify email (6-digit code or magic link — NOT "check your email and come
back")
- Onboarding: "What's your goal?" (1 question, multiple choice)
- Product tour: 3 steps, skippable, 30 seconds total
- Empty state: "Here's what you'll see when you have data" + "Get started"
button
Time-to-value (TTV) targets:
| Product Type |
TTV Target |
How |
| Free tool (calculator, checker) |
<30 seconds |
Instant result, no signup required |
| Self-serve SaaS |
<5 minutes |
Guided setup, sample data, templates |
| Sales-assisted SaaS |
<1 day |
White-glove onboarding, import existing data |
| Enterprise platform |
<2 weeks |
Dedicated implementation, SSO, data migration |
Phase 4: Dashboard Design
Dashboard layout principles (Nielsen Norman Group):
- Most important metric first — top-left, largest visual weight
- Trend over point — "Up 12% from last month" > "$52,340"
- Red/Yellow/Green thresholds — contextualize numbers
- Filters persist — don't reset filters when navigating
- Exportable data — "Download CSV" on every data view
- Date range presets — "Last 7 days," "Last 30 days," "This quarter"
KPI dashboard wireframe:
┌─────────────────────────────────────────────────┐
│ [Logo] Dashboard [Date Range ▼]│
├──────────┬──────────┬──────────┬──────────────────┤
│ ARR │ NRR │ Churn │ Pipeline │
│ $5.2M │ 112% │ 1.8% │ $2.4M │
│ ↑12% QoQ │ ↑3% QoQ │ ↓0.3% QoQ│ 3.2x coverage │
│ ● Green │ ● Green │ ● Green │ ● Yellow │
├──────────┴──────────┴──────────┴──────────────────┤
│ [Revenue trend chart — 12 months] │
│ │
├───────────────────────────────────────────────────┤
│ [Pipeline by stage — funnel visualization] │
├───────────────────────────────────────────────────┤
│ [Recent activity — table] │
└───────────────────────────────────────────────────┘
Phase 5: Accessibility (WCAG 2.2 AA)
11-point accessibility checklist:
| # |
Requirement |
How to Test |
| 1 |
Color contrast ≥ 4.5:1 (normal text) |
WebAIM Contrast Checker |
| 2 |
Color contrast ≥ 3:1 (large text, 18px+) |
WebAIM Contrast Checker |
| 3 |
Don't use color alone to convey info |
Add icons, text, or patterns |
| 4 |
All images have alt text |
Screen reader audit |
| 5 |
Forms have associated labels |
<label for="id"> |
| 6 |
Keyboard navigation works |
Tab through entire page |
| 7 |
Focus indicators visible |
:focus-visible { outline: 2px solid blue; } |
| 8 |
Skip navigation link |
<a href="#main">Skip to content</a> |
| 9 |
ARIA labels on interactive elements |
aria-label="Close dialog" |
| 10 |
No auto-playing video/audio |
Or provide pause/stop controls |
| 11 |
prefers-reduced-motion respected |
@media (prefers-reduced-motion: reduce) |
Accessibility testing tools:
- axe DevTools (browser extension)
- Lighthouse (built into Chrome DevTools)
- VoiceOver (macOS built-in screen reader)
- WebAIM Contrast Checker
Output Format
UI/UX SPEC — [Page/Flow Name]
Page Type: [Landing / Form / Signup / Dashboard / Onboarding]
Conversion Goal: [primary action — signup, demo, purchase]
Sections:
[Wireframe or description of each section]
Component Specs:
- Buttons: [size, color, states (default/hover/active/disabled/focus)]
- Inputs: [type, label position, validation rules, error states]
- Cards: [padding, shadow, border radius, hover state]
- Typography: [hierarchy — H1 through caption]
Mobile Behavior:
- [How layout changes at <768px, <480px]
- [Touch target sizes]
- [Mobile-specific CTAs]
Accessibility:
- [Contrast ratios]
- [Keyboard navigation path]
- [Screen reader annotations]
- [Focus order]
A/B Test Readiness:
- [What elements to test first]
- [Hypothesis per element]
- [Success metric]
Implementation Checklist
Quality Check
Before delivering, verify:
Common Pitfalls
Design over conversion. A beautiful page with 1% conversion is worse
than an ugly page with 4%. Fix: A/B test. Let data decide. Beauty is
subjective. Conversion is not.
Too many fields. "Name + Email + Phone + Company + Role + Team Size +
How did you hear about us?" = 2% conversion. Fix: Email only. Collect
the rest via progressive profiling or enrichment.
Inaccessible color choices. Thin gray text on white background.
Blue links on blue backgrounds. Red/green as the ONLY status indicator
(4.5% of the population is color-blind). Fix: Test contrast ratios.
Add icons alongside color.
No mobile testing. "Our B2B buyers are on desktop." Wrong. 50%+ of
B2B research happens on mobile. If your mobile experience is broken,
you're losing half your pipeline. Fix: Design mobile-first. Desktop is
an enhancement, not the default.
Vague error messages. "An error occurred." "Invalid input." These
don't help users fix the problem. Fix: Every error message must say:
what went wrong + how to fix + example if helpful.
Ignoring the empty state. New users see a blank dashboard that says
"No data yet" and leave. Fix: Empty states should show sample data,
explain what will appear, and provide a "Get started" button.
Execution Artifacts
references/framework-notes.md — named frameworks, citation anchors, and operating assumptions
templates/output-template.md — copy-paste deliverable structure for the user
scripts/check-output.py — local checklist validator for required sections
This skill includes lightweight artifacts the agent can load on demand:
Use the artifacts when the user asks for an implementation-ready deliverable, a repeatable workflow, or a quality check rather than generic advice.
Related Skills
claude-design — Design process for one-off HTML artifacts
popular-web-designs — 54 known-brand design systems
landing-pages — CRO audits, hero/offer/proof/CTA patterns
design-system-gtm — Brand tokens, CSS variables, voice/tone
effective-ui-design — Professional UI design guidelines
a-b-testing — Experiment design, statistical significance
1---2name: ui-ux-gtm3description: Design GTM UI/UX patterns — landing pages (hero, proof, CTA), forms (progressive disclosure, inline validation), signup flows (activation, time-to-value), dashboards (KPI hierarchy, trend indicators), and accessibility (WCAG 2.2 AA). Use when designing or auditing GTM tool interfaces, landing pages, conversion flows, or onboarding experiences. Covers conversion-first design, mobile optimization, and A/B test readiness.4license: MIT5---67# UI/UX for GTM89## Overview1011GTM tools live or die on usability. A landing page with beautiful design that12converts at 1% loses to an ugly page converting at 4%. The mistake: designing13for aesthetics over conversion, or for desktop over mobile, or for perfect14vision over real-world accessibility. This skill covers UI/UX patterns for15every GTM surface — landing pages, forms, signup flows, dashboards, and16onboarding — with a ruthless focus on conversion, accessibility, and mobile17performance.1819## When to Use2021Trigger phrases: "design a landing page UI", "audit our form UX", "improve22signup flow conversion", "design a GTM dashboard", "make our pages accessible",23"mobile-first GTM design", "conversion rate optimization", "form design",24"onboarding UX", "WCAG compliance"2526## Authoritative Foundations2728### Nielsen Norman Group — 10 Usability Heuristics29301. Visibility of system status312. Match between system and real world323. User control and freedom334. Consistency and standards345. Error prevention356. Recognition rather than recall367. Flexibility and efficiency of use378. Aesthetic and minimalist design389. Help users recognize, diagnose, and recover from errors3910. Help and documentation4041### Baymard Institute — Form UX Research4243- Average form abandonment rate: 68%44- Every field removed increases conversion by 5-10%45- Inline validation reduces errors by 22%46- Single-column forms outperform multi-column by 15%4748### Steve Krug — Don't Make Me Think4950"Don't make me think" is the first law of usability. If a user pauses to51figure out what to do next, the design has failed.5253## Step-by-Step Process5455### Phase 1: Landing Page Architecture5657**Conversion-first landing page structure (top to bottom):**58591. **Hero (above fold — 3 seconds to communicate value):**60 - Headline: The outcome, not the feature. "Close more deals" > "CRM software"61 - Subhead: One sentence. "Automate prospecting and enrichment so your team62 spends time selling, not researching."63 - Hero image: Product screenshot (real, not illustration) or demo video64 - Primary CTA: "Start free trial" or "Get a demo" — one CTA only65 - Secondary link: "See how it works" (for people not ready to commit)66672. **Social proof (immediately after hero):**68 - Customer logos (5-8 recognizable names)69 - Key stat: "Used by 2,000+ sales teams"70 - Testimonial: One quote from a named customer with photo71723. **Value props (3-5, each with visual):**73 - Icon + headline + one sentence each74 - NOT "Feature list." Outcome: "Find emails instantly" > "Email finder"75764. **How it works (3 steps):**77 - Visual: screenshot or diagram per step78 - Keep it 3 steps. More = overwhelming.79805. **Detailed features (for comparison shoppers):**81 - Expandable sections or tabs82 - Comparison table: you vs alternatives83846. **Pricing (if self-serve):**85 - 3 tiers, one recommended86 - Annual default, monthly option87 - "Start free trial" CTA on each tier88897. **FAQ (address top 5 objections):**90 - "Do I need a credit card?" → "No, 14-day free trial, no card required."91 - "Can I cancel anytime?" → "Yes, no contracts, no questions."92938. **Final CTA:**94 - Same as hero CTA (consistency)95 - "Join 2,000+ teams already using [product]"9697**Mobile considerations:**9899- Stack columns vertically (single column on mobile)100- CTA visible without scrolling (sticky CTA on mobile)101- Touch targets: minimum 44×44px (Apple HIG)102- Forms: use appropriate input types (tel, email, number) for right keyboard103104### Phase 2: Form Design105106**The 8 rules of high-converting forms:**1071081. **Fewest fields possible.** Every field is a friction point. Start with:109 Email only. Add more fields via progressive profiling AFTER signup.1101112. **Single column layout.** Multi-column forms confuse users about field112 order. Users scan vertically. Single column always.1131143. **Top-aligned labels.** Labels above fields (not left-aligned) reduce115 completion time by 50% (Google/EYE tracking studies).1161174. **Inline validation.** Validate as user types, not after submit.118 - Valid: green checkmark119 - Invalid: red border + error message below field120 - Error message must say: what's wrong + how to fix it1211225. **Clear error messages (not vague):**123 - BAD: "Invalid email" → GOOD: "That doesn't look like an email address.124 Use format: person@example.com"125 - BAD: "Password too short" → GOOD: "Password must be at least 8 characters.126 You entered 5."1271286. **Appropriate input types:**129 - `type="email"` for email fields (mobile keyboard shows @)130 - `type="tel"` for phone (numeric keypad)131 - `type="number"` for quantities132 - `type="url"` for website fields1331347. **No placeholder as label.** Placeholder text disappears on focus. Users135 forget what the field was for. Use a real label above the field.1361378. **Optional vs required labeling:**138 - Mark required fields with an asterisk and label: "Email *"139 - OR mark optional fields with "(optional)" — only one approach per form140 - Don't mix: "Email *" and "Phone (optional)" on the same form141142**Form field reduction patterns:**143144| Current State | Improvement | Fields Saved |145| ----------------------- | -------------------------------------------- | ------------ |146| First Name + Last Name | Full Name | 1 |147| Separate address fields | Address lookup (Google Places API) | 4-5 |148| Company + Company Size | Company name only (size from enrichment) | 1 |149| Phone Number | Remove (get later via progressive profiling) | 1 |150151### Phase 3: Signup and Onboarding Flow152153**Signup flow:**1541551. Email → Password → "Create account" (3 fields max)1562. Verify email (6-digit code or magic link — NOT "check your email and come157 back")1583. Onboarding: "What's your goal?" (1 question, multiple choice)1594. Product tour: 3 steps, skippable, 30 seconds total1605. Empty state: "Here's what you'll see when you have data" + "Get started"161 button162163**Time-to-value (TTV) targets:**164165| Product Type | TTV Target | How |166| ------------------------------- | ----------- | --------------------------------------------- |167| Free tool (calculator, checker) | <30 seconds | Instant result, no signup required |168| Self-serve SaaS | <5 minutes | Guided setup, sample data, templates |169| Sales-assisted SaaS | <1 day | White-glove onboarding, import existing data |170| Enterprise platform | <2 weeks | Dedicated implementation, SSO, data migration |171172### Phase 4: Dashboard Design173174**Dashboard layout principles (Nielsen Norman Group):**1751761. **Most important metric first** — top-left, largest visual weight1772. **Trend over point** — "Up 12% from last month" > "$52,340"1783. **Red/Yellow/Green thresholds** — contextualize numbers1794. **Filters persist** — don't reset filters when navigating1805. **Exportable data** — "Download CSV" on every data view1816. **Date range presets** — "Last 7 days," "Last 30 days," "This quarter"182183**KPI dashboard wireframe:**184185```186┌─────────────────────────────────────────────────┐187│ [Logo] Dashboard [Date Range ▼]│188├──────────┬──────────┬──────────┬──────────────────┤189│ ARR │ NRR │ Churn │ Pipeline │190│ $5.2M │ 112% │ 1.8% │ $2.4M │191│ ↑12% QoQ │ ↑3% QoQ │ ↓0.3% QoQ│ 3.2x coverage │192│ ● Green │ ● Green │ ● Green │ ● Yellow │193├──────────┴──────────┴──────────┴──────────────────┤194│ [Revenue trend chart — 12 months] │195│ │196├───────────────────────────────────────────────────┤197│ [Pipeline by stage — funnel visualization] │198├───────────────────────────────────────────────────┤199│ [Recent activity — table] │200└───────────────────────────────────────────────────┘201```202203### Phase 5: Accessibility (WCAG 2.2 AA)204205**11-point accessibility checklist:**206207| # | Requirement | How to Test |208| --- | ---------------------------------------- | --------------------------------------------- |209| 1 | Color contrast ≥ 4.5:1 (normal text) | WebAIM Contrast Checker |210| 2 | Color contrast ≥ 3:1 (large text, 18px+) | WebAIM Contrast Checker |211| 3 | Don't use color alone to convey info | Add icons, text, or patterns |212| 4 | All images have alt text | Screen reader audit |213| 5 | Forms have associated labels | `<label for="id">` |214| 6 | Keyboard navigation works | Tab through entire page |215| 7 | Focus indicators visible | `:focus-visible { outline: 2px solid blue; }` |216| 8 | Skip navigation link | `<a href="#main">Skip to content</a>` |217| 9 | ARIA labels on interactive elements | `aria-label="Close dialog"` |218| 10 | No auto-playing video/audio | Or provide pause/stop controls |219| 11 | `prefers-reduced-motion` respected | `@media (prefers-reduced-motion: reduce)` |220221**Accessibility testing tools:**222223- axe DevTools (browser extension)224- Lighthouse (built into Chrome DevTools)225- VoiceOver (macOS built-in screen reader)226- WebAIM Contrast Checker227228## Output Format229230```231UI/UX SPEC — [Page/Flow Name]232233Page Type: [Landing / Form / Signup / Dashboard / Onboarding]234Conversion Goal: [primary action — signup, demo, purchase]235236Sections:237[Wireframe or description of each section]238239Component Specs:240- Buttons: [size, color, states (default/hover/active/disabled/focus)]241- Inputs: [type, label position, validation rules, error states]242- Cards: [padding, shadow, border radius, hover state]243- Typography: [hierarchy — H1 through caption]244245Mobile Behavior:246- [How layout changes at <768px, <480px]247- [Touch target sizes]248- [Mobile-specific CTAs]249250Accessibility:251- [Contrast ratios]252- [Keyboard navigation path]253- [Screen reader annotations]254- [Focus order]255256A/B Test Readiness:257- [What elements to test first]258- [Hypothesis per element]259- [Success metric]260```261262## Implementation Checklist263264- [ ] Hero communicates value in <3 seconds (show to someone, ask "what does this do?")265- [ ] Single primary CTA per view (no competing CTAs)266- [ ] Forms use email-only minimum, progressive profiling for more267- [ ] Single-column form layout, top-aligned labels268- [ ] Inline validation on all form fields (validate as user types)269- [ ] Error messages say what's wrong AND how to fix it270- [ ] All touch targets ≥ 44×44px (Apple HIG minimum)271- [ ] Color contrast ≥ 4.5:1 for all text (WCAG AA)272- [ ] Keyboard navigable — Tab through the entire page273- [ ] Mobile tested — over 50% of B2B traffic is mobile274- [ ] Empty states designed (not just "No data" — show what WILL be there)275- [ ] `prefers-reduced-motion` respected for animations276277## Quality Check278279Before delivering, verify:280281- [ ] Output matches the user's stated request282- [ ] Named frameworks or sources are reflected in the recommendation283- [ ] The deliverable is specific enough for an agent to execute284- [ ] Any assumptions, risks, or dependencies are explicit285- [ ] No unsupported claims, invented facts, or private/internal references are included286287## Common Pitfalls2882891. **Design over conversion.** A beautiful page with 1% conversion is worse290 than an ugly page with 4%. Fix: A/B test. Let data decide. Beauty is291 subjective. Conversion is not.2922932. **Too many fields.** "Name + Email + Phone + Company + Role + Team Size +294 How did you hear about us?" = 2% conversion. Fix: Email only. Collect295 the rest via progressive profiling or enrichment.2962973. **Inaccessible color choices.** Thin gray text on white background.298 Blue links on blue backgrounds. Red/green as the ONLY status indicator299 (4.5% of the population is color-blind). Fix: Test contrast ratios.300 Add icons alongside color.3013024. **No mobile testing.** "Our B2B buyers are on desktop." Wrong. 50%+ of303 B2B research happens on mobile. If your mobile experience is broken,304 you're losing half your pipeline. Fix: Design mobile-first. Desktop is305 an enhancement, not the default.3063075. **Vague error messages.** "An error occurred." "Invalid input." These308 don't help users fix the problem. Fix: Every error message must say:309 what went wrong + how to fix + example if helpful.3103116. **Ignoring the empty state.** New users see a blank dashboard that says312 "No data yet" and leave. Fix: Empty states should show sample data,313 explain what will appear, and provide a "Get started" button.314315## Execution Artifacts316317- `references/framework-notes.md` — named frameworks, citation anchors, and operating assumptions318- `templates/output-template.md` — copy-paste deliverable structure for the user319- `scripts/check-output.py` — local checklist validator for required sections320 This skill includes lightweight artifacts the agent can load on demand:321 Use the artifacts when the user asks for an implementation-ready deliverable, a repeatable workflow, or a quality check rather than generic advice.322323## Related Skills324325- `claude-design` — Design process for one-off HTML artifacts326- `popular-web-designs` — 54 known-brand design systems327- `landing-pages` — CRO audits, hero/offer/proof/CTA patterns328- `design-system-gtm` — Brand tokens, CSS variables, voice/tone329- `effective-ui-design` — Professional UI design guidelines330- `a-b-testing` — Experiment design, statistical significance