Smart RenewalsUX Case Study · Sandip Sarkar
UX/UI Case Study · 2026

Smart Renewals

One renewal system with two portals: SecureVault for customers and RenewXpert for resellers.

By Sandip Sarkar, Lead UX Designer

See the results Read the process
RenewXpert: Client Canvas
RenewXpert Client Canvas for Evergreen Innovations showing account health, smart insights and recommended plans
SecureVault: Dashboard
SecureVault customer dashboard showing a renewal due in 12 days
211shared tokens, 0 mismatches
456 → 0accessibility failures
7 of 8heuristic findings resolved
Role
Product owner and lead designer: research synthesis, IA, flows, UI system, interaction design, QA
Scope
2 portals, 8 customer views, 10 reseller views, 1 shared design system
Platform
Web, desktop first. Single-file HTML prototypes in vanilla JavaScript
Status
Interactive prototype, accessibility-checked against WCAG 2.1 AA
01 Overview

Renewals decide revenue, and both sides find them hard

Smart Renewals is a B2B2C product for enterprise software renewals. Customers need a fast, clear way to renew and tailor a plan. Resellers need to know which accounts to work first and what to say. I designed one system for both, with AI that explains itself and never acts without consent.

2
portals that feel like one product
SecureVault and RenewXpert
211
shared design tokens, 0 mismatches
Checked by script
456 → 0
accessibility failures found and fixed
WCAG 2.1 AA, axe-core, 32 views and states
7 of 8
heuristic findings resolved
1 deferred to the roadmap on purpose

The problem

Customers find renewal slow and opaque. Resellers manage many accounts with no clear order of priority. Both lose time and revenue.

What I designed

A customer portal with curated plans, an AI plan builder and a confirm-then-undo renewal. A reseller portal with a prioritised dashboard, a guided workflow and a Client Canvas where an AI agent drafts and modifies offers.

Beyond the screens

A single design system across both portals, a full heuristic evaluation, WCAG 2.1 AA remediation, interruption-safe flows, and AI changes users can see.

No renewal or offer goes out on a single click, and any of them can be undone.

How to read this. The research and personas come from the discovery phase. Everything about the prototype, the audits and the fixes was measured on the final files. Where a number is a target rather than a result, I say so.

02 Problem statement

A renewal is a conversation, but today it is a form and a spreadsheet

Smart Renewals covers renewal for two audiences who sit on opposite sides of the same transaction. Customers renew a plan and adjust it to fit. Resellers manage a portfolio of clients and send offers, so they have to decide where their time goes.

Three constraints shaped every decision: the two portals had to feel like one product, the AI could help but not take control away, and the whole experience had to work for people with different abilities and devices.

Customer SecureVault

  • See what is expiring and why it matters
  • Compare curated plans without a sales call
  • Customise a plan with AI and commit with confidence

Reseller RenewXpert

  • Know which clients need attention today
  • Understand an account fast, then act on it
  • Draft, modify and send an offer, and track it
03 Goals and success metrics

Five goals, each with a design response and a way to measure it

GoalDesign responseHow I measure it
Shorten the path to a confident renewalCurated plans, a four-question AI plan builder, one confirm stepTime to renew; share of renewals finished without human contact
Help resellers choose what to work on firstQuota and at-risk strip, propensity scores, Client CanvasClients handled per day; time from alert to first outreach
Make AI trustworthyMethodology panels, source chips, confirm before send, undoOffer reversals; trust rating in moderated tests
Make two products feel like oneShared tokens, shared components, audience-specific vocabularyToken and component parity audit (see Quality)
Be usable by everyoneWCAG 2.1 AA contrast, names for every control, keyboard shortcutsaxe-core violations; keyboard task completion

The first two goals trace back to discovery research: 65% of customers found renewal time-consuming and complex, and 60% of resellers struggled to identify priority clients.

04 Role, constraints and timeline

I owned the direction and the quality bar

My role

Product owner and lead designer. I set scope, wrote the quality gates, directed every design decision and tested the result in the browser. Implementation was done in a pair-building loop with an AI coding assistant, and every claim in this study was checked with tooling.

Constraints

  • No back end, so AI replies are scripted intent routing
  • One HTML file per portal, no build step, so it opens anywhere
  • Desktop first, with responsive behaviour for the shell

Tools

Figma for wireframes and mockups. HTML, CSS and vanilla JavaScript for the interactive prototype. Playwright for interaction tests and computed-style checks. axe-core for accessibility scans.

Why one HTML file. A React and TypeScript build did not run as expected. I moved to single-file HTML so reviewers could open the prototype with a double click. The trade-off is that the AI is simulated. The prototype can answer questions about interaction and trust. It cannot say anything about model quality.

Timeline

Discovery and design ran for 12 weeks: five of UX research, personas, flows and architecture, then seven of wireframes, visual design and prototyping. The build and quality phases that followed are described here by outcome rather than by calendar.

  1. 1

    Discovery and definition

    Survey, personas, empathy maps, flows, IA, first visual design.

  2. 2

    Two-portal build

    SecureVault and RenewXpert as single-file prototypes.

  3. 3

    Script-driven pass

    A reseller call script audited line by line. Nine gaps closed.

  4. 4

    One system

    Tokens, type, icons, spacing and motion aligned and measured.

  5. 5

    Heuristic evaluation

    Nielsen's ten heuristics applied. Findings fixed one by one.

  6. 6

    Accessibility

    AA remediation rooted in tokens. Keyboard and motion support.

  7. 7

    Interruption and trust

    Draft recovery, visible AI changes, safe navigation.

  8. 8

    Hardening

    Dead code, half-pixels, copy audit, publish checks.

05 Design thinking process

Design thinking, with evaluation built in

The process runs from empathise through define, ideate and design, then adds two stages that carried most of the value: evaluate and iterate. Most improvements came from testing the prototype and fixing what it exposed.

  1. 1

    Empathise

    Survey, reseller script, insight synthesis

  2. 2

    Define

    Personas, empathy maps, how-might-we, principles

  3. 3

    Ideate

    Scenario, flows, architecture, scope

  4. 4

    Design

    System, screens, AI behaviour, motion

  5. 5

    Evaluate

    Heuristics, WCAG scans, parity audits

  6. 6

    Iterate

    Fix, re-measure, repeat until clean

The Double Diamond

The same work seen as a Double Diamond: two cycles of opening up and narrowing down, first on the problem, then on the solution.

The Double Diamond Two diamonds side by side. The first, the problem space, diverges in Discover and converges in Define. The second, the solution space, diverges in Develop and converges in Deliver. PROBLEM SPACE SOLUTION SPACE DiscoverDiverge DefineConverge DevelopDiverge DeliverConverge

Discover

User interviews, the discovery survey and a reseller script walkthrough, to see the whole problem before choosing one.

Define

Personas, empathy maps, core pain points, how-might-we questions and design principles narrow it to a brief.

Develop

A scenario, process flow, user flows, information architecture, design system and screens explore the answers.

Deliver

An interactive prototype, a heuristic evaluation, WCAG remediation and quality gates settle on what ships.

06 Empathise

What customers and resellers told us

Discovery began with a quantitative survey of existing users across demographics. It asked how people handle renewals today, what slows them down and how they feel about AI help.

User interviews

The survey showed what was happening. Interviews with customers and resellers explained why. They are the source of each persona's goals, frustrations, needs and motivations.

Customers What came up

  • Renewal feels like an administrative chore that interrupts running the business
  • Doubt about value for money, and no easy way to compare plans
  • A wish for personalised options without a back-and-forth by email
  • Anxiety about missing a renewal date
  • Curiosity and caution about AI: can it really help me decide?

Resellers What came up

  • Overwhelmed by the volume of clients and tasks
  • Unsure which clients to prioritise on a given day
  • Manual tracking of client information
  • A wish for deeper insight into each client's needs
  • Wanting AI support, with client data in one place alongside the CRM

Participant counts and session notes are not reproduced in this study.

Discovery survey

of customers found renewal time-consuming and complex
of customers valued customising a plan to their needs
of customers were more likely to renew with tailored AI recommendations
of resellers struggled to manage several clients without a central dashboard
of resellers had difficulty identifying priority clients

Source: the discovery survey. These are stated preferences and behaviours, which is why the design was tested against heuristics, accessibility checks and scripted scenarios, with moderated usability testing planned next.

The shape of data

Two kinds of data shaped the design: the research data, which split cleanly by audience, and the product data, which the interface has to make readable.

The research data splits in two

Customer problems cluster around time and tailoring (65%, 80%, 70%). Reseller problems cluster around visibility and priority (70%, 60%). Blue rings are customers and teal rings are resellers. That shape is why there are two portals on one system.

What that shape ruled out

  • One shared dashboard, because the two audiences ask different first questions
  • Two unrelated products, because both sides look at the same account from opposite ends

The data the product handles

Account

Name, industry, tier, customer since, contact and role, current plan, expiry, yearly spend.

Identity and contract come first, with the contact and a suggested call window beside them.

Scores

Renewal likelihood, propensity to upgrade, a health score from 0 to 100, plan utilisation.

Likelihood and propensity answer different questions, so each carries its own label and hint.

Plans

Name, yearly price, storage, security, support, features. For resellers: commission rate and amount.

Feature rows align across plans for scanning. Commission appears only in the reseller portal.

Signals and events

Storage use, tickets, engagement events, stakeholders, and offer events such as sent, opened and viewed.

Each signal shows when it happened and where it came from, so a recommendation can point back to evidence.

From data to visual form
Kind of dataVisual formWhere
A deadlineCountdown ring with the days leftSecureVault dashboard
CapacityQuota ring plus a days-to-full forecastSecureVault dashboard and Usage
A score from 0 to 100Ring with a status badge, and five dimension barsRenewXpert Health Scores
Progress to a targetProgress ring with the amount left to closeRenewXpert dashboard
Stage and volumeKanban columns with a propensity figure on each cardRenewXpert Pipeline
Change over timeKPI cards with a delta, such as +35% engagementRenewXpert dashboard
Money by confidenceFour stat cards and a confidence bar chartRenewXpert Forecast

Reseller script walkthrough

To test the reseller portal against a realistic conversation, I used a call script written from a reseller's point of view. It defined what the AI agent should say, what it should surface and in what order. I audited the prototype against it line by line and closed nine gaps:

  • A propensity-score change surfaced as its own tile
  • A smart bundling suggestion tied to a named product
  • Quick-access shortcut chips for the first things a reseller asks
  • A greeting rewritten as a three-line priority checklist
  • A "How I generated these insights" methodology panel
  • Social and professional data named as a source
  • A company snapshot written as a short narrative
  • A next-steps checklist after the account overview
  • Product naming made consistent across chat and cards

Inclusion of artificial intelligence

Customer portal

AI picks plans from the account's usage and four answers. It also suggests changes, explains each one and builds a custom plan when asked.

Reseller portal

AI ranks accounts by renewal date, value, health and propensity. Inside an account it summarises what matters and why, drafts offers and emails, and modifies a plan on request.

07 Define

Two people, one renewal

The personas come from the discovery research and interviews. I tied each one to a character in the prototype, so that every screen could be tested against a person with a goal.

John Doe

Customer, business owner
  • 35
  • New York
  • MBA
  • Tech-savvy
  • Efficiency-oriented
Goals
Find and customise a plan that fits the business, and spend less time on renewals.
Frustrations
Renewal is slow and complex. Plans are hard to compare. Customisation means emailing someone.
Needs
A simple process, customisable plans, AI recommendations, easy comparison and reminders he cannot miss.
Motivation
Run the business well, save time, get the best value and decide quickly.

Jane Smith

Reseller agent, sales
  • 40
  • San Francisco
  • BBA
  • Organised
  • Goal-oriented
Goals
Manage many clients and renewals, focus on the ones that matter, and use AI to understand each client better.
Frustrations
Hard to prioritise. Limited AI help. Manual tracking and a heavy task load.
Needs
A single dashboard, AI that ranks work and surfaces insight, and quick access to client data and plan options.
Motivation
Hit targets and commission, serve clients well and build lasting relationships.
The prototype cast: how each persona appears in the prototype
PersonaPrototype characterScenario data the design is tested against
John (customer)Nicholas Miles, CTO, Evergreen Innovations, on SecureVault EssentialsStorage at 6.4 TB of 10 TB with about 48 days to capacity; renewal due in 12 days
Jane (reseller)Anna, Senior Account Manager, APAC, on RenewXpertQ2 quota at 74% of $25,000, 14 days left, $6,400 to close; Evergreen is the top opportunity

Empathy maps

John, customer

Thinks

  • Am I getting the most out of my plan?
  • How do I cut cost without losing quality?
  • Can AI really help me decide?

Does

  • Compares plans and providers
  • Asks peers and reads reviews
  • Sets reminders for deadlines

Feels

  • Frustrated by complexity
  • Relieved by tailored suggestions
  • Anxious about missing a deadline

Says

  • "Is this the best value for my money?"
  • "Why can't I compare plans more easily?"
  • "I need timely reminders for renewals."

Jane, reseller

Thinks

  • Which clients should I focus on today?
  • Am I using my time well?
  • How can AI improve client satisfaction?

Does

  • Works from the dashboard
  • Asks AI for client insight
  • Prioritises by importance and deadline

Feels

  • Overwhelmed by volume
  • Supported by AI insight
  • Motivated to be more efficient

Says

  • "I need to prioritise my clients efficiently."
  • "I wish I had more insights into my clients' needs."
  • "How can I ensure no client is overlooked?"

Surfacing the core pain points

Putting the survey, the interviews and the empathy maps side by side, six pain points kept coming back. Three belong to customers and three to resellers.

Customer
1

Renewal is slow and complex

65% found it time-consuming and complex.

"I wish the renewal process was simpler."

Customer
2

Plans are hard to compare and tailor

80% value customising a plan to their needs.

"Why can't I compare plans more easily?"

Customer
3

Deadlines are easy to miss

Anxiety about missing a renewal date shows up in the customer empathy map.

"I need timely reminders for renewals."

Reseller
4

No single view across clients

70% struggled to manage several clients without a central dashboard.

"I need better tools to manage my workload."

Reseller
5

Hard to know who matters today

60% had difficulty identifying priority clients.

"How can I ensure no client is overlooked?"

Reseller
6

Manual tracking and thin insight

Manual tracking and limited AI support appear in the reseller persona's frustrations.

"I wish I had more insights into my clients' needs."

Features that eliminate the pain

Each pain point has a specific answer in the product. The last column shows where to see it.

From pain point to feature
Pain pointFeatureHow it removes the painWhere it lives
1 Slow, complex renewalCurated plans, one confirm step, undoRenewal becomes a short path: see the plans, confirm, done, with a way backSecureVault Renewals, confirm modal
2 Hard to compare and tailorAI plan builder, "Customize this plan" under every priceTailoring happens in place, in plain language, from four answersSecureVault Renewals and builder
3 Missed deadlinesCountdown ring, action-needed strip, notificationsThe deadline is on the first screen, with the next action beside itSecureVault dashboard
4 No single viewDashboard, pipeline and health scores in one portalEvery account is in one place, at the level of detail you ask forRenewXpert Dashboard, Pipeline, Health Scores
5 Unclear prioritiesQuota progress, at-risk strip, ranked opportunitiesThe day's order is decided already, with reasons attachedRenewXpert Dashboard, Opportunities
6 Manual tracking, thin insightClient Canvas, methodology panel, AI agent that drafts and modifies offersInsight arrives with its evidence and a next step, without manual diggingRenewXpert Client Canvas and AI panel

How might we

  1. Let a customer renew in minutes without losing the chance to tailor the plan?
  2. Show a reseller which accounts matter today, and why?
  3. Make an AI recommendation something people can inspect before they accept it?
  4. Keep an interrupted task safe when someone leaves halfway?
  5. Make two portals feel like one product while speaking to different people?

Design principles

Five rules I used to settle arguments, each visible somewhere specific in the product.

Explain before asking for trust

AI shows its method and sources. See the methodology panel on the canvas.

Never commit on the user's behalf

Confirm before send, undo after, drafts on exit.

Show that something happened

Loading, a flash on the card and a plain-language summary for every AI change.

One system, two audiences

Same tokens and components. Different vocabulary for customers and resellers.

Measure, do not assume

Computed styles and automated scans settle questions that eyes cannot.

08 Ideate

One scenario runs through both portals

To keep two products coherent, I wrote a single story and designed every screen to serve it: a reseller, Anna, works the Evergreen Innovations renewal while the customer, Nicholas, receives it.

  1. RenewXpert1

    Anna sees the priority

    RenewXpert's dashboard puts Evergreen first: contract ending in 20 days, 97% propensity to renew.

  2. RenewXpert2

    She opens the canvas

    A staged loader assembles CRM data, engagement signals and AI scoring in about two seconds.

  3. RenewXpert3

    The AI explains a top pick

    Premium Plus at $16,500 a year, a $2,800 commission, with the reasoning and sources one click away.

  4. RenewXpert4

    She changes the offer

    She asks for a two-year term with 15% off. The card recalculates to $14,030 and flashes to show what changed.

  5. RenewXpert5

    She sends it, safely

    A confirm step, a sandbox email preview and an undo link stand between a click and a send.

  6. SecureVault6

    Nicholas sees his renewal

    SecureVault shows 12 days left, storage at 64% and curated plans.

  7. SecureVault7

    He builds a plan

    Four questions produce a custom plan with the reasons written in plain language.

  8. SecureVault8

    He confirms, with undo

    The plan, price and billing terms are shown before he commits, and he can reverse it.

Prototype fidelity. The two portals share the story and the design language, but not live data. Each runs its own scripted version of the scenario. A live cross-portal sync was explored during prototyping and belongs to the API phase.

Process flow

A renewal moves through five stages, the same ones as the Renewal Workflow bar in RenewXpert. This swimlane shows who does what at each stage: the reseller, the AI agent and the customer.

Process flow: one renewal, five stages
Lane1 Identify2 Research3 Engage4 Negotiate5 Close
Reseller RenewXpertSees ranked priorities and at-risk accountsOpens the Client Canvas and reads the insights and sourcesReviews the top pick, confirms and sends the offerModifies the offer through the AI agentSees the renewal closed and the commission updated
AI AgentRanks accounts by date, value, health and propensitySummarises the account, explains why, names its sourcesDrafts the offer and email, previews in a sandboxRecalculates price, term and commissionSuggests the next opportunity
Customer SecureVaultSees a renewal due in 12 daysCompares curated plans and usageReceives the offerCustomises with the AI plan builderConfirms the renewal, with undo

Customer steps are scenario-level. The two prototypes do not share live data.

User flows

SecureVault, customer

  1. Opens the renewal email or marketing page
  2. Signs in
  3. Dashboard shows renewal due
  4. Views curated plans
  5. Is a plan right?
  6. Renew
  7. Confirm: plan, price, billing
  8. Success
  9. Undo available
  1. No plan fits
  2. Starts the AI plan builder
  3. Answers four questions
  4. AI builds a custom plan and explains why
  5. Reviews the plan
  6. Back to Confirm

RenewXpert, reseller

  1. Signs in
  2. Dashboard: quota, at-risk, tiles
  3. Opens a client
  4. Canvas generates
  5. Reads insights and methodology
  6. Reviews recommended plans
  7. Happy with the top pick?
  8. Confirm send
  9. Sandbox email preview
  10. Offer sent and tracked
  11. Undo available
  1. Offer needs changes
  2. Modify offer
  3. Describes the change in chat
  4. Loading state
  5. Card recalculates and flashes
  6. Back to review
  1. Leaves halfway
  2. "Leave without finishing?"
  3. Draft saved
  4. Dashboard banner
  5. Resume returns to the canvas

A five-step Renewal Workflow bar (Identify, Research, Engage, Negotiate, Close) runs across the reseller portal, so Anna always knows where she is.

Information architecture

Three site maps, drawn level by level: the customer portal, the reseller portal, and the Client Canvas where resellers spend most of their time. Navigation groups mirror the sidebar.

SecureVault

Eight entry points: two before sign-in and six inside the app.

SecureVault information architectureSite map of the customer portal. Before sign-in: a marketing page and an account gate. After sign-in: Dashboard, Renewals, Usage and Analytics, Security Center, Billing and Invoices, and Support, each with its main content blocks. Global elements are search, notifications, profile and help, and a docked AI assistant.SecureVaultBEFORE SIGN-INWORKSPACEINSIGHTSHELPMarketing pageHero with planbuilder previewFeaturesAI Plan BuilderspotlightThree stepsPricing previewTestimonialsAccount gateSign inDemo accounts,fiveForgot passwordmessageDashboardRenewalcountdownAction neededstripStorage quotaSecureVaultIntelligenceQuick actionsRenewalsCurated plans,fourCustomize thisplanAI plan builder,four questionsConfirm renewalSuccess withundoUsage andAnalyticsStorage growthStoragebreakdown bytypeActive devicesSecurity CenterSecurity scoreNeeds attentionDevice securitystatusRecent accesslogCertificationsBilling andInvoicesPayment methodInvoice historyPlan summary andchange planSupportChat with AIassistantFAQsAccount managerEmail supportGLOBAL, ON EVERY SIGNED-IN PAGESearch, Cmd or Ctrl+KNotificationsProfile and helpDocked AI assistant
Text version of the SecureVault diagram
  • Marketing page
    • Hero with plan builder preview
    • Features
    • AI Plan Builder spotlight
    • Three steps
    • Pricing preview
    • Testimonials
  • Account gate
    • Sign in
    • Demo accounts, five
    • Forgot password message
  • Dashboard
    • Renewal countdown
    • Action needed strip
    • Storage quota
    • SecureVault Intelligence
    • Quick actions
  • Renewals
    • Curated plans, four
    • Customize this plan
    • AI plan builder, four questions
    • Confirm renewal
    • Success with undo
  • Usage and Analytics
    • Storage growth
    • Storage breakdown by type
    • Active devices
  • Security Center
    • Security score
    • Needs attention
    • Device security status
    • Recent access log
    • Certifications
  • Billing and Invoices
    • Payment method
    • Invoice history
    • Plan summary and change plan
  • Support
    • Chat with AI assistant
    • FAQs
    • Account manager
    • Email support

Global, On Every Signed-In Page: Search, Cmd or Ctrl+K, Notifications, Profile and help, Docked AI assistant.

RenewXpert

Nine pages in four navigation groups. Opportunities opens the Client Canvas.

RenewXpert information architectureSite map of the reseller portal. Navigation is grouped into Main (Dashboard, Opportunities, Pipeline), Intelligence (Health Scores, Forecast, Call Debrief), Growth (Earnings, Playbooks) and Settings. Opportunities leads to the Client Canvas, shown in the next diagram. Global elements are the command palette, AI Seller Agent panel, notifications, profile menu and the Renewal Workflow bar.RenewXpertMAININTELLIGENCEGROWTHUTILITYDashboardPriority KPIsQ2 quotaattainmentAt-risk stripPrioritytilesMarketinsightsQuick-accesschipsOpportunitiesRanked listof 12ClientCanvas, seenext diagramPipelineFive stages,Identify toClosed WonAI analysisHealth ScoresAccounthealth cardsFive healthdimensionsAI analysisForecastFour statcardsConfidencebreakdownActionsneededTop 5 by ARRAI summaryCall DebriefBuyersentimentKeydiscussionpointsObjectionsraisedSuggestednext stepsCRM updatesappliedEarningsQuota andcommissionCommission byaccountBest offer ifacceptedPlaybooksPlaybooklibraryRecommend formeActive andinactiveplaysSettingsDisplaydensityAI agentNotificationsGLOBAL, ON EVERY PAGECommand palette and searchAI Seller Agent panelNotificationsProfile, help and sign outRenewal Workflow bar
Text version of the RenewXpert diagram
  • Dashboard
    • Priority KPIs
    • Q2 quota attainment
    • At-risk strip
    • Priority tiles
    • Market insights
    • Quick-access chips
  • Opportunities
    • Ranked list of 12
    • Client Canvas, see next diagram
  • Pipeline
    • Five stages, Identify to Closed Won
    • AI analysis
  • Health Scores
    • Account health cards
    • Five health dimensions
    • AI analysis
  • Forecast
    • Four stat cards
    • Confidence breakdown
    • Actions needed
    • Top 5 by ARR
    • AI summary
  • Call Debrief
    • Buyer sentiment
    • Key discussion points
    • Objections raised
    • Suggested next steps
    • CRM updates applied
  • Earnings
    • Quota and commission
    • Commission by account
    • Best offer if accepted
  • Playbooks
    • Playbook library
    • Recommend for me
    • Active and inactive plays
  • Settings
    • Display density
    • AI agent
    • Notifications

Global, On Every Page: Command palette and search, AI Seller Agent panel, Notifications, Profile, help and sign out, Renewal Workflow bar.

Client Canvas

Nine content blocks. Offer changes happen through overlays so the canvas itself stays in place.

Client Canvas information architectureContent blocks of the Client Canvas, reached from Opportunities. Nine blocks: Account header, Metrics strip, Company snapshot, Smart insights, Recommended plans, Stakeholder map, Engagement feed, Next steps and Offer tracking. Recommended plans leads to the Modify offer, Regenerate, Confirm and send, Sandbox email preview and Offer sent overlays. Around the canvas: breadcrumb, Renewal Workflow bar, AI panel, and a Leave without finishing dialog with a dashboard draft banner.Client CanvasAccount headerPoint ofcontact andcall windowPreview emailMake a callMetrics stripSeven accountmetricsCompanysnapshotExpandablesummarySmart insightsSource chipsHow Igeneratedthese insightsWhy thisrecommendation?RecommendedplansTop pick andtwoalternativesCommissioncomparisonModify offer,three optionsRegenerate,with loadingstateConfirm andsend offerSandbox emailpreviewOffer sent,with undoStakeholdermapPeople rankedby engagementEngagementfeedRecent eventsView allNext stepsActionchecklistOffer trackingAppears aftersend: opened,viewedAROUND THE CANVASBreadcrumb to OpportunitiesRenewal Workflow barAI Seller Agent panelLeave without finishing dialogDashboard draft banner
Text version of the Client Canvas diagram
  • Account header
    • Point of contact and call window
    • Preview email
    • Make a call
  • Metrics strip
    • Seven account metrics
  • Company snapshot
    • Expandable summary
  • Smart insights
    • Source chips
    • How I generated these insights
    • Why this recommendation?
  • Recommended plans
    • Top pick and two alternatives
    • Commission comparison
    • Modify offer, three options
    • Regenerate, with loading state
    • Confirm and send offer
    • Sandbox email preview
    • Offer sent, with undo
  • Stakeholder map
    • People ranked by engagement
  • Engagement feed
    • Recent events
    • View all
  • Next steps
    • Action checklist
  • Offer tracking
    • Appears after send: opened, viewed

Around The Canvas: Breadcrumb to Opportunities, Renewal Workflow bar, AI Seller Agent panel, Leave without finishing dialog, Dashboard draft banner.

Scope decisions

FeatureDecisionWhy
AI plan builder, four questionsBuiltTailoring without a sales call is the core customer promise
Confirm before commit, and undoBuiltStops AI and one-click actions from changing things without consent
Renewal Workflow barBuiltGives a sense of place in a multi-step renewal
Draft recoveryBuiltInterruptions are normal in a reseller's day
Global search and Cmd+KBuiltSecureVault's search looked real but did nothing
Dark modeCutThe toggle changed an attribute but never the page, and fixing it meant reworking the shared tokens
Hover lift on non-clickable cardsCutIt promised an action that did not exist
Live AI model and back endDeferredOut of scope for an interaction prototype
Live cross-portal syncDeferredBelongs to the API phase
AAA contrast, phone layoutsDeferredNeeds brand sign-off, and a separate mobile design pass
09 Design system

One system, tested by measurement

The system is built on 211 shared design tokens, Inter and contrast-safe semantic colours. Both portals use the same tokens, and a script confirms there are no mismatches.

Colour

Primary#2D5BFC
5.23:1

Success#15803D
5.02:1

Warning#B45309
5.02:1

Danger#DC2626
4.83:1

Muted text#5C6B7D
5.45:1

Ink#0F172A
17.85:1

Contrast shown against white. Every semantic colour clears 4.5:1 for normal text.

Type, shape and surface

Navigation, active itemInter 15 / 700
Body copy, buttons and table text use one base sizeInter 13 / 400, buttons 13 / 600
Small buttons and meta textInter 12
Section labelInter 11 / 700, tracking .08em

Whole-pixel sizes only. During the final audit I normalised 105 half-pixel font sizes (99 in SecureVault, 6 in RenewXpert) so both portals share one scale. Controls use a 6px radius, cards 10px, KPI cards 12px, badges 4px, with a 1px #E2E8F0 border and a very light shadow.

Components

Primary actionSecondarySmallSmall ghost
HealthyAt riskOverdueAI generated
Renewal likelihood90%
Health score85/100
Unsaved plan draftYou were modifying the offer for Evergreen Innovations.
Component parity, measured from computed styles in both portals
ComponentSecureVaultRenewXpertMatch
Default button36px, 6px radius, 13px / 60036px, 6px radius, 13px / 600Yes
Small button30px, 12px padding, 12px text30px, 12px padding, 12px textYes
Badge22px, 4px radius, 11px / 60022px, 4px radius, 11px / 600Yes
Top bar icon button36px, 16px icon36px, 16px iconYes
Avatar34px circle34px circleYes
Search field36px, 6px radius36px, 6px radiusYes
Active nav item44px, 15px / 700, #2D5BFC44px, 15px / 700, #2D5BFCYes
Tile10px radius, 1px #E2E8F010px radius, 1px #E2E8F0Yes
KPI card12px radius, 1px #E2E8F012px radius, 1px #E2E8F0Yes
Body textInter 13pxInter 13pxYes
Icon sizes
WhereSize
Top bar buttons16px
Sidebar navigation18px
Card titles, notices14px
Inside buttons12px
AI avatar, header and message13px and 12px
Motion
MomentDuration
Hover colour change120ms
Card border, shadow, lift150ms
Draft banner entrance300ms
AI typing indicator0.9 to 1.3s
Plan update loading1.3s
Canvas generation2.3s

Both portals respect prefers-reduced-motion, and add larger touch targets on touch devices.

10 Screens

The final screens and the reasoning behind them

Screenshots below come from the running prototypes. Select any image to enlarge it.

SecureVault

The customer portal: renew, compare, customise.

8 views
SecureVault: marketing page
Marketing page. The hero shows the plan builder working instead of describing it.

What to notice

  • The promise is demonstrated: a small conversation ends in a priced plan.
  • Two clear actions: build with AI, or view plans.
  • Trust cues sit just under the fold, close to the decision.

What to notice

  • Demo accounts let a reviewer step straight into a scenario.
  • Errors and dead ends explain themselves in plain language.
  • "Forgot password" explains what the preview does instead of doing nothing.
SecureVault: account gate
Account gate. Sign in, or choose a demo account.
SecureVault: dashboard
Dashboard. The countdown ring turns a date into urgency.

What to notice

  • The headline says what is happening and when: expiring in 12 days.
  • Storage forecast (about 48 days to capacity) links usage to the renewal decision.
  • An "Action needed" strip ranks what to fix first.
  • Plain-language actions follow, led by Renew now.

What to notice

  • The recommended plan is emphasised, but all four stay comparable.
  • Feature rows align across cards, so scanning is horizontal.
  • "Customize this plan" sits under every price, so tailoring is never a separate hunt.
SecureVault: curated plans
Curated plans. Compare four plans and tailor any of them.
SecureVault: AI plan builder
AI plan builder. Four answers become a plan, with the reasons written out.

What to notice

  • Reasons are tied to the user's own answers, in plain language.
  • The plan is added to the page, so the chat is not the only place it lives.
  • Next steps: renew, talk to an advisor, or adjust the answers.
SecureVault: usage and analytics
Usage and Analytics. Evidence for the renewal story.
SecureVault: security center
Security Center. A score with prioritised issues.

RenewXpert

The reseller portal: prioritise, understand, act.

10 views
RenewXpert: dashboard
Dashboard. What needs attention today, in order.

What to notice

  • A one-line summary of the day sits above four numbers.
  • Quota progress answers "how am I doing?" before anything else.
  • The at-risk strip names the accounts.
  • Quick-access chips answer the first questions a reseller asks.

What to notice

  • The answer arrives as a card: health, propensity, ARR and key signals.
  • Sources are named (CRM data, engagement logs, AI analysis).
  • Three next steps follow, so the conversation keeps moving.
RenewXpert: AI Seller Agent
AI Seller Agent. An account overview as a structured card.
RenewXpert: Client Canvas
Client Canvas. One place to understand an account and act on it.

What to notice

  • Identity and contact first, including a suggested call window.
  • Seven account metrics in one strip, each readable alone.
  • Insights come with a "How I generated these insights" panel and source chips.
  • Recommended plans mark a top pick with its commission and propensity.

What to notice

  • People are ranked by engagement, with a tooltip explaining the badge.
  • The map and the activity feed share a row at equal height, which removed a long scroll.
RenewXpert: stakeholders
Stakeholders and engagement. Who matters, and what they just did.
RenewXpert: pipeline
Pipeline. Five stages, with propensity per card.
RenewXpert: health scores
Health Scores. Five dimensions per account.
RenewXpert: forecast
Forecast. High confidence, needs action, at risk.
11 AI interaction design

AI that explains itself and asks first

The research said people want AI help. It did not say they would trust it. Every AI behaviour in the product is paired with a pattern that keeps the person in charge.

AI behaviourInterface patternWhy it builds trust
RecommendsMethodology panel, "Why this recommendation?", source chips, confidence tagPeople can inspect the reasoning before accepting it
Takes timeTyping indicator, staged canvas loader, loading state on plan changesLatency is visible and has a reason
Suggests what nextChips after every answerRemoves the blank-page problem and keeps momentum
Changes somethingBlue flash on the card, "Just updated" badge, summary with the new numbersThe change is announced where people will see it
Could send somethingConfirm step, sandbox email preview stating that nothing is sentThe user decides when it becomes real
Gets it wrongUndo links, draft recovery, adjust-my-answersMistakes are cheap to reverse

Real in the prototype

  • Intent routing for what the user types
  • Parsing of discount, term and commission, with context
  • Conversation state, such as "awaiting the change description"
  • Every interface pattern above

Scripted

  • Reasoning text and insight wording
  • Scores, propensity and account data
  • Typing and generation delays
  • Any claim about model accuracy
12 Design deep dives

Six problems, solved one at a time

Each started as feedback or a failed test, and each is written up the same way: what was wrong, what I decided and what the tests showed.

1. Plan changes you can see

Problem

A reseller describes a change in chat and the plan card updated instantly and silently, so it went unnoticed. A second fault hid underneath: when the request began as a chat message instead of the Modify button, the assistant was never told to expect a description. The reply fell through to a generic answer and the card never changed.

Decision

Show a 1.3-second loading state with rotating status text, then apply the change, flash a blue outline round the card for about two seconds, flip the badge to "Just updated" and summarise the numbers in chat. Arm the "awaiting details" state on every entry path. Parse with context, so a percentage next to the word commission is not treated as a discount.

Result

Four phrasings tested end to end. A 15% discount with a two-year term moves the price from $16,500 to $14,030 and the commission from $2,800 to $2,390. Asking to raise commission to 20% leaves the price untouched.

RenewXpert: plan update loading
Before the change. A loading state tells the reseller the AI is working.
RenewXpert: plan updated
After. The card shows $14,030, a two-year term and a "Just updated" badge, and the chat repeats the numbers.

2. Drafts that wait for you

Problem

Leaving a half-finished modification silently dropped the context. The first reminder I built was a pale information banner that was easy to miss.

Decision

A "Leave without finishing?" dialog saves a draft. The dashboard then shows a banner with an amber icon, a bold title and a real Resume button. After review I removed the one-sided accent border and used a uniform border with a tinted fill.

Result

Resume returns to the canvas. Sending the offer clears the draft, so navigation is never blocked once the work is done. Banner text contrast is 5.25:1 on its tint.

RenewXpert: leave dialog
On exit. A calm warning with two plain choices.
RenewXpert: draft banner
On return. The banner is hard to miss and one click from the canvas.

3. Navigation that respects the last click

Problem

Opening a client canvas starts a 2.3-second generating sequence on a timer. If the reseller clicked Dashboard in that window, the dashboard appeared and then, moments later, the app pulled them back to the canvas.

Decision

Track the timer, and cancel it whenever the user navigates somewhere else.

Result

Tested with Dashboard and Pipeline interruptions, uninterrupted completion and rapid double entry. In every test, the page the user chose last stayed on screen.

4. A search that works

Problem

SecureVault's search looked identical to RenewXpert's and did nothing. When I built it, results vanished before a click registered: the dropdown's visibility was tied to input focus, and the input lost focus first. RenewXpert had the same race.

Decision

Grouped results for plans, pages and actions, keyboard control (arrows, Enter, Escape), Cmd or Ctrl+K, and visibility managed in script instead of by focus. Fixed in both portals.

Result

Searching "secur" returns plan, page and action matches that open on click or Enter.

SecureVault: search
Grouped results. Keyboard and mouse both work.

5. Confirm first, undo after

Problem

Clicking Renew committed a plan instantly. An expensive action should never be one stray click away.

Decision

A confirm modal restates the plan, price and billing terms. The success state carries an Undo link that restores the previous plan, banner and carousel. The same pattern protects Send offer in RenewXpert.

Result

Renewing in SecureVault and sending in RenewXpert now follow the same pattern: confirm first, undo after.

SecureVault: confirm renewal
Confirm. The price and terms are restated at the moment of commitment.

6. Hover only where clicking works

Problem

Cards lifted and changed border on hover even when clicking them did nothing. On the RenewXpert pipeline, 13 of 18 cards were filler with no action behind them.

Decision

If it moves, it must do something. I removed hover feedback from non-interactive cards in both portals, and tagged the 13 filler cards and one stakeholder row as static, with a default cursor.

Result

Interactive cards keep their hover and static ones stay still, so movement tells you a card can be clicked.

If it moves, it must do something.

Smaller refinements that added up

Breadcrumb in the content column

It had spanned the whole window above the sidebar. Moving it into the content area lets the sidebar run the full height.

Stepper that adapts to its container

The workflow bar collided with its own badge whenever the AI panel opened. It now compacts in three stages based on its own width, and keeps step names for screen readers.

Tighter landing rhythm

Section spacing came down from 88px to 60px. The page is 380px shorter (5,403px to 5,023px) with no content cut.

Before Plan description

"Effortlessly upgrade to SecureVault Pro, our advanced solution designed for expanding businesses, offering scalable storage and reliable multi-layered security."

After Plan description

"Up to 100TB of scalable storage with multi-layered encryption and 24/5 priority support, built for teams that have outgrown Essentials."

A plain-language pass replaced stock marketing phrasing with specifics across both portals.

13 Accessibility

Five colour fixes cleared 385 contrast failures, and one gap remains

The target was WCAG 2.1 AA. I scanned 32 views and states with axe-core 4.14 (13 in SecureVault, 19 in RenewXpert), measured contrast on the actual tokens, and tested keyboard paths by hand.

385
contrast failures, traced to five colour decisions
62
icon buttons with no accessible name
9
more: 7 unlabeled Settings toggles (found late), 1 scrollable region, 1 avatar label
0
violations on the final sweep

Failures found, by type

Colour contrast
385
Icon buttons without names
62
Unlabeled toggles
7
Scrollable region
1
Label in name
1
After the fixes
0

Linear scale. 456 failing elements in total.

Contrast against white

Muted text, before
2.56
Muted text, after
5.45
Success, before
3.30
Success, after
5.02
Warning, before
3.19
Warning, after
5.02

The vertical line marks 4.5:1, the WCAG AA minimum for normal text.

What the scans found, and what fixed it
IssueWCAGFoundRoot causeFix
Colour contrast1.4.3385 (SV 135, RX 250)Five shared colour tokens, plus dimmed textDarkened the tokens once; removed text opacity
Icon buttons without names4.1.262 (SV 18, RX 44)Icon-only controlsNames added to every icon-only control
Unlabeled toggles4.1.27 (RX Settings)Checkboxes inside styled labels with no textEach toggle named from its row's visible label
Scrollable region2.1.11 (kanban)Overflow area unreachable by keyboardFocusable, with a role and a label
Label in name2.5.31 (SV avatar)Name "User menu" omitted the visible initialsName now begins with the initials
Fixing at the token level
TokenBeforeAfterUsed for
Muted text#94A3B8, 2.56:1#5C6B7D, 5.45:1Secondary text, labels, placeholders
Success#16A34A, 3.30:1#15803D, 5.02:1Positive status and values
Warning#D97706, 3.19:1#B45309, 5.02:1Caution status and values

Because both portals share their tokens, one change fixed both and cannot drift.

Also in place

  • Cmd or Ctrl+K opens search. Arrow keys move through results, Enter opens one.
  • Escape closes the top layer: confirm, success, dropdowns, then the AI panel.
  • Reduced motion is respected in both portals.
  • Touch devices get a 40px minimum control height.

AAA contrast: left for brand sign-off

Every semantic colour passes AA but would fail AAA's 7:1. Meeting it means darkening the whole palette, for example the primary blue toward #1A3BC4, which changes the brand. I documented the options and left the call to brand sign-off.

The gap automated tools cannot see. Many cards and stepper steps are clickable containers with no keyboard access: 22 of 88 clickable elements in SecureVault and 73 of 162 in RenewXpert. axe-core does not flag them, but a keyboard user cannot reach them (WCAG 2.1.1). This is the largest remaining accessibility issue and the first item on the roadmap.

14 Heuristic evaluation

Ten strengths and eight findings from a heuristic review

I evaluated the prototype with Nielsen's ten usability heuristics. The method combined expert walkthroughs in both roles, scenario-based tasks, cross-portal consistency checks and deliberate error states such as a wrong password and an empty search.

10
confirmed strengths
8
findings: 2 major, 4 minor, 2 cosmetic
7
resolved
1
deferred on purpose

Severity of the eight findings

What happened to them

One cosmetic finding (onboarding and a help centre) is deferred on purpose.

Heuristic by heuristic
HeuristicWhat worksGap found
1 Visibility of system statusTyping indicator, staged canvas loader, live offer tracking, workflow barNone open
2 Match with the real worldCustomers read "renew" and "plan"; resellers read "offer" and "propensity"Search advertised a shortcut that did not exist
3 User control and freedomEvery modal and dropdown can be dismissedDead links; no undo after commit
4 Consistency and standardsOne visual language across both portalsIdentical search bars behaved differently; a mislabeled help link
5 Error preventionForm validation catches bad input before it is sentRenewal committed in one click
6 Recognition over recallPersistent navigation, context labels, suggestion chipsTwo routes to one answer looked different
7 Flexibility and efficiencyChips and a command palette for expertsSecureVault had no accelerators
8 Aesthetic and minimalist designDense screens grouped into scannable cardsNone open
9 Recover from errorsPlain-language messages, a useful empty search stateNone open
10 Help and documentationReal shortcut list, tooltips on badgesNo onboarding or help centre
The eight findings and what happened to them
#FindingSeverityResolution
1SecureVault search looked functional and did nothingMajorBuilt grouped search with keyboard control; fixed the focus race in both portals
2Renewing committed a plan in one clickMajorConfirm modal stating plan, price and billing terms
3Search hinted at Cmd+K, which did not existMinorImplemented with finding 1
4"Forgot password" and "Contact your account manager" were dead linksMinorA plain inline message explains what the preview does
5"Help and keyboard shortcuts" opened the Support pageMinorOpens the assistant with the real shortcut list
6Two routes to the urgent-renewal answer looked differentMinorMy premise was imprecise: they were two features. Restoring chat history now renders the same cards
7No undo after committing an actionCosmeticUndo on the SecureVault renewal and the RenewXpert offer
8No help beyond a shortcut listCosmeticDeferred Onboarding and a help centre are on the roadmap
15 Quality and consistency

Gates I could check with a tool

I set quality gates that a script could verify, then re-ran them after every change.

AuditMethodResult
Token parityScript compares all custom properties in both files211 tokens, 0 mismatches
Component parityComputed styles read from the running pages10 components match (see Design system)
TypographySearch for fractional font sizes105 half-pixel sizes normalised (99 SV, 6 RX)
Icon sizingComputed icon sizes by locationFive size rules applied in both portals
Dead codeUnused function and class scan, then checked by handMore than 120 unused CSS rules removed from RenewXpert, 7 from SecureVault, 1 dead function
CopyManual read of every visible stringAbout 150 strings reworded; plan descriptions rebuilt around specifics
Release hygieneSearch for debug code, structure checksNo console logging, no TODOs, valid structure, meta description and favicon on both
Accessibilityaxe-core on every view, modal and overlay32 views and states, 0 violations
16 Problems and lessons

Eight things that went wrong, and what they taught me

A toggle that does not work is worse than no toggle.

What I sawRoot causeFixLesson
The dark mode toggle changed an icon but not the pageA later global override redefined the same colour variables. Equal specificity, later source order, so it always wonRemoved the featureRemove a feature before shipping it half-working
The banner's dismiss button would not clickAn invisible decorative circle overlapped it and took the clicksDecorative layers ignore pointer inputDecorative layers should ignore pointer input
A dashboard click was undone two seconds laterAn untracked timer from canvas generationTrack the timer and cancel it on navigationEvery timer needs an owner
Search results vanished before a clickVisibility was tied to input focusManage visibility in scriptDo not bind interface state to focus
A typed discount request got a generic replyThe chat was told to expect details on only one entry pathArm it on every path and reset it when another option is chosenSet conversation state on every entry path
"Raise commission to 20%" cut the price by 20%Any percentage was read as a discountContext-aware parsingRead the whole phrase before reading its numbers
The stepper collided with its badge when the AI panel openedBreakpoints followed the viewport, but the constraint was the containerContainer queries in three stagesSize components to their container
"Zero violations on every page" was not trueMy sweeps listed pages by hand and skipped SettingsFound 7 unlabeled toggles; rebuilt the sweep to cover every viewGenerate coverage from the navigation, and say what the tool cannot see
17 SLA and compliance impact

Where the design meets service levels and compliance

Renewals run on deadlines and promises. A missed renewal window, a slow reply or an unresolved ticket is a service-level failure before it is a design failure. I treated service levels and compliance as design inputs, then checked each against what the prototype does.

Service-level moments

Where a commitment shows up, and how the design supports it
MomentCommitment at stakeHow the design supports it
Renewal windowThe customer renews before the contract expiresA countdown ring and an "expiring in 12 days" headline on the first screen, an action-needed strip, and notifications
First response to a clientA reseller follows up quickly once a client shows interestOffer-opened alerts, a suggested call window on the canvas, and AI-drafted follow-ups ready to send
Unresolved ticketsOpen tickets are visible before they threaten a renewalThe at-risk strip names accounts with open tickets, and the engagement feed shows when each ticket was raised
Support coverage by planThe support hours each plan promisesPlans state coverage in plain terms: email in business hours (Essentials), 24/5 priority (Pro), 24/7 with a success manager (Premium), custom SLAs (Enterprise)
Sending an offerA send is never silent or accidentalA confirm step, a sandbox email preview, offer tracking and undo

Compliance

Compliance areas and where the prototype stands
AreaWhat the prototype doesStatus
Accessibility, WCAG 2.1 AAZero axe-core violations across 32 views and states, keyboard shortcuts, reduced motionPartly Click-only cards still need keyboard access
Data residency and privacy (GDPR, CCPA, PDPA)Compliance updates surface in SecureVault notifications and on its dashboard. RenewXpert offers can bundle a compliance pack for regional requirementsContent only Enforcement belongs to the back end
Consent for actionsConfirm before sending or renewing, a sandbox preview that sends nothing, undo after commitIn place
Audit trailOffer events (sent, opened, viewed) are tracked and shown in the feedPartly No persistent audit log yet

Impact

Verified in the prototype

  • The renewal deadline is on the first screen of SecureVault
  • At-risk accounts and open tickets are named on the RenewXpert dashboard
  • No offer is sent and no renewal committed without a confirm step
  • Zero accessibility violations on the final sweep

Targets to validate

  • Missed renewals from 35% to under 10%
  • Response time to client queries from 8 hours to 1 to 2 hours with AI help
  • Support tickets resolved inside their SLA before a renewal date

The prototype has no live SLA data. Items marked as targets are hypotheses. The verified items describe what the interface does. They say nothing about results in service.

How I will measure it after launch. Share of renewals completed before expiry. Median time from offer opened to first follow-up. Share of at-risk accounts whose open ticket is older than its SLA. Share of sends and renewals that went through the confirm step. Accessibility audit pass rate.

18 Results

What I measured, and what I still need to prove

Verified on the final prototypes

211 / 0
shared tokens and mismatches
456 → 0
accessibility failures, found and fixed
axe-core, WCAG 2.1 AA, 32 views and states
7 of 8
heuristic findings resolved
105
half-pixel font sizes normalised
380px
shorter landing page, nothing removed
5,403px to 5,023px
9
script gaps closed in the reseller agent

Hypotheses to validate

The prototype has no real users yet, so these are targets from the discovery phase, not results. Moderated testing will replace each with a measurement.

MetricBaselineTargetHow I will measure itStatus
Renewal completion time (customer)20 to 30 min5 to 10 minTimed task in moderated testsNot measured
Missed renewals (customer)35%Under 10%Renewal funnel analytics after launchNot measured
Customisation requestsManual, by email or callIn-app, AI-assistedShare of requests started in the builderNot measured
Reseller prioritisation accuracyLow, manual trackingAI-ranked insightAgreement between ranking and expert choiceNot measured
Customer satisfaction3.2 of 54.6 of 5Post-task surveyNot measured
Reseller productivity10 to 12 clients a day18 to 20Clients handled in a timed scenarioNot measured
Response time to client queries8 hours1 to 2 hours with AI helpTime from alert to first outreachNot measured
Adoption plan: what I will watch for in each segment
SegmentStageBehaviour to observeSignal
New customersAwareness to trialStarts the plan builder and finishes itBuilder completion rate
Returning customersTrial to regular useRenews through the portal and reuses AI suggestionsRepeat renewals in portal
Power customersRegular use to advocacyCustomises independently and refers othersCustom plans, referrals
New resellersAwareness to trialUses the dashboard before trusting the AIDashboard use before first AI prompt
Experienced resellersRegular use to power useWorks from the canvas and modifies offersCanvas opens, modifications sent
19 Reflection and next steps

What I would do differently, and what comes next

If I started again

  • Put the prototype in front of people before running the audits.
  • Build keyboard operability into the card component on day one.
  • Create one shared fixture for names, dates and day counts across both portals.
  • Generate test coverage from the navigation model instead of from memory.

What surprised me

  • Five colour decisions caused 385 of the failures.
  • The most useful bugs came from interruptions: leaving halfway, clicking away mid-load, typing the "wrong" way.
  • Cutting dark mode was the right call: the toggle never worked, and fixing it meant reworking the shared tokens.

Now

  • Make click-only cards and stepper steps keyboard operable (95 elements)
  • Align shared data across portals: names, dates, day counts
  • Run moderated usability tests, 5 to 8 people per segment

Next

  • Add a review step before AI changes apply
  • Reconnect live state between the portals through an API
  • Add onboarding and a help centre
  • Instrument the metrics above

Later

  • Design phone layouts
  • Decide on AAA contrast with the brand team
  • Support drafts for several clients at once
  • Connect a real model and evaluate its recommendations