click to navigate sections

Price Transparency Chatbot

The missing layer so pricing stops being a surprise

01. Overview

2026 June

Exploring how independent salons could build client trust earlier in the booking journey, through a rule-based chatbot that qualifies service needs and surfaces real pricing estimate before reaching the door.

Disciplines:

UX Research, User Journey Mapping, UI Design, Interaction Design, Prototyping

Tools:

Figma, Figjam, Claude Code

02. Case Background

Finding a hair salon/barber shop is something everyone has to navigate at some point. For women, it carries a particular weight, because hair services aren’t a cheap commitment.

Many women have experienced slight startle to a shock when it comes to receiving the final bill at the salon, with the understanding that the amount is even before tip. Beyond a basic cut, a single appointment can easily run into the hundreds of dollars, and the variables that drive that number aren’t always visible until you’re there in-person.

When the final number lands to what you weren’t expecting, the response is rarely confrontational. More often, it’s a quiet embarrassment, a feeling that you should have known, or that you made a choice you weren't equipped to make. Some women don’t go back; some avoid booking altogether, unwilling to commit to a service they can’t price in advance.

We can’t simplify what goes into salon pricing, but we can make it legible. What’s missing is a clear, interactive way to surface them upfront, before clients commit.

Project Inspiration

03. The Problem

Client Impact

  • Unclear pricing keeps clients from booking, for fear of being overcharged

  • Required consultations meant to clarify pricing costs client time and travel, which sometimes results in learning service is out of budget

  • Clients surprised by the final bill rarely push back

Business Impact

  • Unclear pricing loses clients before contact is ever made

  • Emails, forums and consultations are the current workaround, which is time-consuming, and still don't guarantee a successful service sale

  • When pricing turns a client away at consultation, both sides lose time on information that should've been available upfront

The Reframe

Hair pricing is built from variables, like length, condition, service complexity, stylist level, add-ons. If we were to add a conversation layer to communicate these variables and display pricing transparency, then we could build trust and confidence before the appointment.

1

Engage

Visits salon website, browse services. Pricing is vague or missing

2

Conversation LAyer

Interact with the business, answer questions and get real price in a few minutes

3

Schedule & Show Up

Books a time. Service and price still depend on in-person consultation

04. The Research

We set out to find whether salons use chatbots at all. Browsing numerous salon websites, what we found instead was pricing mostly surfaced through the booking portal itself, using platforms like Vagaro, Boulevard, Meevo, Fresha, which tie pricing display directly to backend scheduling.

← Hair salon that uses Boulevard for booking

↑ Hair salon that uses Boulevard for booking

Salons that do want to align pricing with clients would require a consultation, and the fallback is still a static form or an email. In other words, every method we found prioritizes the backend, scheduling, over the moment a client tries to understand what she’s booking and what it will cost. That’s the middle layer a chatbot could fill.

Chatbot tools for this do exist, like Oscar Chat, Conferbot, Jotform, but none appeared active across the sites we browsed. Likely because initial setup, especially for AI-driven tools, asks more technical lift than an independent salon owner has time for. Even so, these tools still lean towards scheduling efficiency over building pricing transparency into the conversation itself.

05. Try it Out

Explore freely! Every path leads somewhere real

Try this path:

① Main Menu → ② Service Menu → ③ Color → ④ Highlights/Balayage → ⑤ Answer some questions → ⑥ See your estimate

06. The User

Primary ⋅ Women 18-40

Needs to know she can afford it before committing

Price is the gate

Secondary ⋅ Women 40-60

Needs confidence in the salon, not just the price

Salon credibility matters

Proto-Personas

Phoebe

Clear vision, price sensitive, motivated to book

Clear vision, price sensitive, motivated to book

Happy Path

Wanda

needs bot to help her figure out what she wants

needs bot to help her figure out what she wants

Guidance

Olivia

vets quality and products before committing

vets quality and products before committing

Specificity

Amanda

limited time; needs a fast confident flow

limited time; needs a fast confident flow

Efficiency

Jacqueline

chatbot as info layer, phone as a closing channel

chatbot as info layer, phone as a closing channel

Handoff

07. Design Decisions

Logic

Rule-based Over AI-powered

More chatbot tools lean towards AI for adaptiveness. We chose rule-based instead, because booking a service doesn’t need that complexity. Every added layer between a client and the end goal is a chance for one to give up. The goal wasn’t to impress with intelligence, it was to be direct enough that clients always understand why they’re being asked something and where it leads.

Rule-based also means every estimate is traceable. A price comes from an explicit combination of service, length, stylist tier, not a model’s guess. That structural math is what makes the estimate trustworthy.

Selection Chips over Free-Type Inputs

Most clients don’t know the specific term the hair industry used. Rather than parsing a client’s words and adding cognitive load, most of the conversation runs on tappable chips, which funnel them toward an answer faster.

This also protects the system. Free-type input relies on keyword matching, and breaks the moment someone types something outside that list. A blend of mostly chips, with free-type reserved for a few key moments, gives flexibility only where it’s needed, with chips as the fallback when nothing matches.

Data Pipeline

  • Collapsed complexity: Sorted service, length, stylist tier and hidden rules (like automatic bleach detection), reduced to what actually drives price

  • Building Conversation: Each answer narrows toward one state, which resolves to a single estimate, shown as a range

One pipeline, reused: quote quiz matches state to price; style discovery quiz scores to match state instead.

The Full Pipeline

Visuals

Layout

Built mobile-first at 390px since most people discover and book salons on their phones. 





The screen splits into two fixed zones: a scrolling thread and a fixed action tray below. The thread holds messages and salon-side info; the tray is where the clients act. It’s the same split LINE business chatbots use, where the bottom menu stays functionally separate from the conversation above it.





Messages pop in from the bottom, and scroll snaps to the bottom by default, unless content overflows, then it snaps to the top so nothing important is missed on first view. Familiar territory: it mimics iMessage.

Components

Message bubbles reads as dialogue. Buttons are rounded to signal tappable. Cards and general buttons use different border colors so they’re never confused, expect selection ships, which share the card border and add their own checkmark when selected.

Legibility

Body text sits at 16px. Button start at 50px (generally landing at 60px), sized for any thumb. Fills stay flat with no shadow, so nothing carries more visual weight than it should, expect at real decision moments like confirming a booking, where a different fill marks the step as distinct. 



Color follows the same logic. Since clients will use the chatbot for a while, the palette stays muted and warm, easy on the eye, with color checked against WCAG contrast standards and run through a red-green colorblindness simulation.

08. Metric Planning

Current Memory Wiring

The chatbot holds session data in memory from the moment a client enters. The first checkpoint is at entry, asked once and held for the rest of the session. From there, memory is scoped to whichever path a client takes. While holding individual sets, both the quote and style discovery quiz flow memory is kept until the quiz is completed/abandoned. None of this data is currently persisted anywhere beyond the session, but only held just long enough to serve the conversation. 





While the data exists and is not logged anywhere yet, the existing structure was built in a direction that makes real measurement possible. That direction points towards the following:

Memory into Measurables

  • Conversion Insight

Pairing a logged combination against whether that client actually booked would answer the sprints real underlying question more precisely than a single overall booking rate could. In other words, once seeing the estimate price, does it make them more willing to book with the salon. Beyond that, which kind of requests and client profiles does seeing a real price actually convert.

  • Loyalty rate

The new/returning flag, tracked over time, becomes a ratio: the share of bookings that come from repeat clients vs first-timers.

  • Service Demand

The quizzes hold memory that let us understand which service-and-condition pairings come up most often, informing where the pricing matrix and stylist training should focus next.

09. The Showcase

Revisit the flow after reading:

10. AI Involvement

Process Map

Human-led
AI-led
Both
Defineproblem, audit; pricing matrix, proto-personas
MappingFlow & Dialogue Script
Synthetic Testing5 personas tested
Lo/Mid-Fi Frames
Design Systems
Hi-Fi Frames
Design -> Code Prepstyles.css locked the system for code
Prototyping

Using the right tool for the phase:

  • Claude Code Terminal - scaffold from scratch with direct access to Figma

Built as real components, named, auto-layout applied

  • Claude Code Desktop - side-by-side iteration and refinement

Design transferred to real code, then refined with live view panel

Synthetic Testing
Building
Working Notes

11. Reflections

  • Scope Cut

  • Scope Cut

The focus was building a clearer pricing system that could actually convert into bookings, so a few areas were designed but not fully wired: like new client onboarding, drop-off re-engagement timer, and underlying backend logic.

  • Refinement in Quizzes/Backend Development

  • Refinement in Quizzes/Backend Development

If the project were to continue, the next focus would be building a real, trackable backend instead of only in-session data. After that, running the quiz and quote flow through more answer combinations, to confirm common pairings still price accurately, and refining the results shown on the client's end.

  • Input field word-match expansion

  • Input field word-match expansion

The keyword system needs testing against messier real input, like typos, synonyms, phrases, and combinations the current list doesn't cover. Widening that net would cut down on error scenarios and friction.