UX Case Study : WILL

UX Case Study : WILL

How do you design an app connecting India's busiest users to its least literate workforce?

What is WILL?

View prototype

WILL is a two-sided service marketplace connecting urban Indian professionals with daily wage workers like masonry workers & labourers.

The platform required two separate apps designed simultaneously: one for the customer booking a service, one for the worker receiving the job.

The challenge wasn't just designing an app. It was designing trust, for a customer who's never let a stranger into his home, and a worker who's been underpaid his entire life.

Project Overview

Project Duration :

2 weeks

Role:

UX Designer - Research, IA, User Flows, Wireframes, Prototype.

Tools:

Figma, FigJam, Adobe Creative Suite

The Problem

The Problem

Every morning, skilled workers in Indian cities walk to a chowk and wait. They wait hoping someone has a job for them. Meanwhile, across the city, a software engineer discovers his roof has cracks and is leaking. He searches online, calls numbers off walls. After three days of no progress, he takes a leave from work — and goes to the same chowk to find someone who can fix it.

Problem Statement & User Personas

User/Customer : Sanjay

No reliable, trust-verified way to book skilled workers on demand.

Worker : Vinod

No consistent, fair way to find daily work without being underpaid.

How Might We:

Q. HMW help Sanjay trust a worker he's never met before letting them into his home?

Q. HMW ensure Vinod gets paid exactly what was agreed — every time?

Q. HMW make the booking experience work for someone who can't read English?

Q. HMW reduce the risk of no-shows on both sides?

Q. HMW design two completely different experiences that still form one seamless transaction?

Understanding the Users:

Sanjay Mehta — The Customer (Software Engineer, 29, Bangalore)

Sanjay is busy, digitally comfortable, and used to solving problems with his phone. When something breaks at home, he wants it fixed fast — without taking a day off work or letting an unverified stranger into his apartment.
Current behaviour: Googles services, calls random numbers, asks colleagues for referrals. Core anxiety: Can I trust this person in my home? Core goal: Book a verified, skilled worker quickly without disrupting his workday. Quote: "I just need to know the person coming to my house is legit."

Vinod Kumar — The Worker (Electrician, 34, Mumbai)

Vinod is skilled, experienced, and entirely dependent on word of mouth and the chowk for daily work. Some days are good. Most are unpredictable. He's been underpaid, given less than agreed, and has no way to prove his worth beyond showing up.
Current behaviour: Goes to the chowk daily, relies on repeat clients and referrals. Core anxiety: Will I get paid what was promised? Core goal: Consistent, fairly paid work — without depending on luck every morning. Quote: "I do the work. Getting paid what we agreed is another fight."

Journey Maps:

Sanjay's Arc: Notices problem → Searches online → Calls unreliable numbers → Waits with no updates → Takes leave from work → Lets a stranger in with no verification → Pays cash, no record
Low points: No trust signals. No transparency. No accountability.

Vinod's Arc: Wakes up early → Goes to chowk → Waits with no certainty → Gets a job (or doesn't) → Travels to site → Does the work → Gets paid less than agreed with no recourse
Low points: No consistency. No protection. No dignity.

Every negative emotion in these journey maps became a design question.

Information Architecture of WILL:

WILL required two separate information architectures — one per user type. Designing one without the other would break the transaction.

WILL (Customer App) │ ├── 1. Onboarding │ ├── Splash Screen │ ├── Sign Up / Log In │ ├── OTP Verification │ ├── Basic Profile Setup │ ├── Location Selection │ └── Role Selection (Customer / Worker) │ ├── 2. Home │ ├── Location Display │ ├── Search Bar (Explore Services) │ ├── Active Booking Card (conditional) │ ├── Service Categories │ │ ├── Masonry │ │ ├── Cleaning │ │ ├── Plumbing │ │ ├── Electrician │ │ ├── Gardening │ │ └── See All │ └── Top Reasons to Choose WILL (Trust Banner) │ ├── 3. Service Detail │ ├── Service Image │ ├── Social Proof Tag ("X people booked in last 24hrs") │ ├── Service Name + Rating + Reviews Count │ ├── About Tab │ │ ├── About Service Description │ │ └── How WILL Works (process diagram) │ ├── Review Tab │ │ ├── User Reviews List │ │ └── View All Reviews │ ├── Starting Price Display │ └── Book Now CTA │ ├── 4. Booking Flow │ ├── 4.1 Help Workers Understand the Task │ │ ├── Select Work Type (Dropdown) │ │ │ └── Other → Text Input │ │ ├── Describe the Problem (Optional) │ │ │ ├── Upload Photo │ │ │ ├── Voice Note │ │ │ └── Text Input │ │ ├── Number of Workers Selector │ │ └── Next CTA │ ├── 4.2 When Should We Start? │ │ ├── Hourly / Daily Toggle │ │ ├── Arrival Time Selector │ │ ├── Date Picker (7-day max) │ │ ├── Duration Slider (if Hourly) │ │ ├── Work Location (auto-filled, changeable) │ │ ├── Estimated Total Display │ │ └── Confirm CTA │ ├── 4.3 Secure Your Booking (₹20 Fee) │ │ ├── 100% Refundable Badge │ │ ├── Review Booking Details │ │ ├── Total Amount Display │ │ ├── Add Tip Options (+50 / +100 / Custom) │ │ ├── Payment Method Selector (UPI / Cards / Paytm) │ │ ├── Booking Fee Display (₹20) │ │ └── Pay Now CTA │ └── 4.4 Searching State │ ├── "Notifying Workers Near You" Header │ ├── Live Map with Radius Animation │ ├── Countdown Timer (30 min max) │ ├── View Booking Details (expandable) │ ├── High Demand / Status Message │ └── Cancel Search CTA │ ├── 5. Active Booking │ ├── 5.1 Worker Assigned │ │ ├── Confirmation Header + Checkmark │ │ ├── Worker Profile Card │ │ ├── Message / Call / More Actions │ │ ├── Work Details Card │ │ ├── Total Amount Due Display │ │ └── Track Status CTA │ ├── 5.2 Track Status │ │ ├── Progress Bar │ │ ├── Arrival OTP Display │ │ ├── Worker Card │ │ └── Work Complete → Pay Now CTA │ └── 5.3 Payment & Completion │ ├── "Your Work is Complete" Header │ ├── Amount Due Display │ ├── Payment Method Selector │ └── Pay Now CTA │ ├── 6. Booking Complete │ ├── Payment Confirmation │ ├── Thank You Message │ ├── Rate Your Experience │ └── Go to Home CTA │ ├── 7. Bookings ├── 8. Profile └── 9. Settings WILL (Worker App) │ ├── 1. Onboarding │ ├── Splash Screen │ ├── Sign Up / Log In │ ├── OTP Verification │ ├── Role Selection (Customer / Worker) │ ├── Profile Setup │ └── Skill & Document Setup │ ├── Select Skills │ ├── Experience (years) │ └── Document Upload ([ID Redacted] etc.) │ ├── 2. Home (होम) │ ├── Location Display │ ├── Online / Offline Toggle │ ├── Active Job Card (conditional) │ └── Incoming Job Notification (overlay) │ ├── Amount (large, prominent) │ ├── Tip Display │ ├── Job Type + Icon │ ├── Location + Distance │ ├── Voice Note Button │ ├── Reject Button │ └── Accept Button │ ├── 3. Job Flow │ ├── 3.1 काम स्वीकृत (Job Accepted) │ ├── 3.2 Job Detail (Active) │ │ ├── Job Type Header (Hindi) │ │ ├── Date & Expected Completion Time │ │ ├── Customer Name │ │ ├── Amount Display │ │ ├── Work Location + Direction Button │ │ ├── Call / Message Customer │ │ ├── "मैं पहुँच गया हूँ" CTA (Arrival) │ │ └── Arrival OTP Entry (4-digit) │ └── 3.3 Job Completion │ ├── "काम पूरा हुआ - भुगतान मांगे" CTA │ ├── Completion OTP Entry (4-digit) │ └── काम पूरा हुआ Screen │ ├── 4. Work (काम) ├── 5. पैसा हिसाब (Transactions) ├── 6. Profile (प्रोफाइल) └── 7. Settings (सेटिंग)

Key Decisions

Decision 01
01

Decision 01: Two Separate Apps

The decision: Build a dedicated customer app & a dedicated worker app.

Why: A single app causes heavy cognitive load. Keeping them separate allows for distinct UI/UX, different mental models, and targeted language settings for the worker demographic.

Decision 02
02

Decision 02: Hindi/Voice Navigation

The decision: Worker app defaults to Hindi with voice readouts for core actions.

Why: A vast portion of our target demographic has low literacy. A text-heavy UI is non-functional. Voice and iconography allow users who can't read to still operate independently.

Decision 03
03

Decision 03: ₹20 Booking Fee

The decision: Charge a nominal, 100% refundable booking fee.

Why: Without financial commitment, customers cancel easily, wasting a wage worker's time. This fee ensures serious intent, while the refund guarantee protects the customer against no-shows.

Decision 04
04

Decision 04: Dual OTP System

The decision: Require an Arrival OTP and a Completion OTP.

Why: The trust deficit is massive. The Arrival OTP verifies the worker before home entry. The Completion OTP authorizes payment only when the customer is satisfied. It creates a secure boundary.

Decision 05
05

Decision 05: Automated Assignment

The decision: Connect users automatically based on verified skills rather than profile browsing.

Why: In traditional models, customers may discriminate based on photos or names. Automatic assignment removes bias, ensures equal opportunity for verified workers, and speeds up booking.

Decision 06
06

Decision 06: Visual Process Diagrams

The decision: Show a step-by-step visual diagram before booking commitment.

Why: To lower anxiety. Users need to know exactly what happens after they hit 'Book'. Visual roadmaps answer unspoken questions and build trust instantly.

"WILL is the first system that connects Sanjay (the user) & Vinod (the Worker) & protects simultaneously."