Lely Monalisa

Case study · Event booking platform, 2025

PIARY: Redesigning a Weekend Event Booking Flow Using Platform Data

Redesigned the homepage booking flow for Pia Machicon using 3 months of booking log analysis — from data review through Figma and into production React/TypeScript. Pia Machicon is a booking platform by PIARY Inc. for Machicon — organized group dating events held across Japan. I owned this project end-to-end: from initial data analysis and Figma prototyping through to the production React/TypeScript implementation that shipped.

Role

Designer + engineer (solo)

Timeline

Aug – Sep 2025

Tools

Figma · React · TypeScript

Shipped

Live in production

Process

DiscoverHypothesize (JTBD)Design & ShipMeasure & Reflect
Pia Machicon — home screen after the 'Go This Weekend' section was added.
Pia Machicon — home screen after the 'Go This Weekend' section was added.

01  /  Problem

Discovery started with booking data, not wireframes.

The original brief was to improve the booking flow, with no defined scope. Before sketching any solutions, I pulled three months of booking logs — 192 bookings — to understand how the platform was actually being used. The data showed that 83.3% of events fell on weekends, yet the search flow treated every day equally. The form wasn't built for how most users were actually using the platform.

Events held, by day of week

Sat 55 · Sun 35 — weekends make up 83.3% of events

When bookings are actually made

59.3% of bookings happen on weekdays

The Inventory Skew
83.3% of all events occur on weekends, with Saturday alone accounting for ~51% of total platform volume.
The Planning Window
59.3% of these weekend bookings happen during the work week. The "Majority User" is someone planning their Saturday on a phone between tasks at work.
The Impulse Cost
Weekend events had a 36.7% cancellation rate — 3× higher than the weekday rate of 11.1%.

The 5-step search form wasn't just slow — it was built for the wrong user. Every visit, the 83% majority absorbed the full friction of a workflow designed for the 17% minority.

What users had to do

1. Pick date
2. Pick area
3. Run search
4. Filter results
5. Event detail

Five steps, repeated on every visit.

Before: finding an event required 5 steps — open the form, enter a date, pick an area, submit, then browse results.
Watch how many taps it takes just to see a list of events.

02  /  Hypothesis: Jobs-to-Be-Done

Applying the Jobs-to-Be-Done framework revealed two distinct use cases that the existing flow didn't account for.

I applied Clayton Christensen's Jobs-to-Be-Done (JTBD) framework and found that users were "hiring" this app for two very different jobs.

The Minority Job

(Exploratory)

The Majority Job

(Expeditionary)

User's job

"Let me browse a wide catalog for future dates."

"It's Wednesday; help me lock in my Saturday plans now."

Old UI fit

🔍5-step search — ideal for this
5-step search — total friction

03  /  Alternatives Considered

Three alternative approaches were evaluated before the final direction was decided.

❌ Rejected

Add a "Weekend" Filter to the Form

Opening the form is the friction. Adding a checkbox doesn't fix that.

❌ Rejected

Saved Search Presets

Requires too much setup. Users' behavior was closer to "first-visit" intent every time they logged in.

❌ Rejected

Redesign the Calendar UI

This makes the "browse and explore" model prettier, but it doesn't make the "expeditionary" job faster.

✅ The Adopted Solution

The "Go This Weekend" Section

I implemented a dedicated, auto-populated section on the homepage. Using geo-location and session data, the app now greets the user with: "Here is what is happening in [Your City] this Saturday."

04  /  Solution

I added a dedicated "Go This Weekend" section to the homepage. Here are the three design decisions behind it.

Decision 01

Intelligent Scoping

The Setup

Two simple tabs: "This Weekend" and "Next Weekend."

The Reason

Data confirmed the vast majority of bookings occur within a 7-day window. Showing events 3–4 weeks out created unnecessary noise.

The Goal

By narrowing the inventory to a two-week window, I limited choices to a scannable dozen per tab. This applies Hick's Law — reducing the number of options to decrease the time it takes for a user to make a decision.

Decision 02

Zero-Input Context

The Setup

Automated area detection.

The Reason

Forcing a user to tell us where they are is a friction point.

The Logic

Guest users are defaulted to Tokyo (our highest-volume hub), while logged-in users are automatically shown events in their registered area. Relevant inventory is visible the millisecond the page loads — moving from "Search" to "Discovery" instantly.

Decision 03

Scannable vs. Input-Driven UI

The Setup

Information-dense, high-contrast event cards.

The Reason

When the goal is speed, users shouldn't have to click into a detail page to see if an event is "worth it."

The Logic

I prioritized four key data points: Event Name, Date, Area, and Real-time Availability (remaining spots). The interaction model shifted from a "filter-down" process to a "choose-at-sight" experience.

After: open the page, see this weekend's events. No form, no steps.
The same task, now in one tap. The search form is still there — but most users never need to touch it.

05  /  Why this placement

The homepage was already working. Adding something new meant finding a spot that wouldn't break what was already there.

The "Popular Area" section already puts a city in the user's head. Placing "Go This Weekend" right after it means the moment they think "Tokyo," they see what's actually happening there this Saturday.

"Popular Keyword" stays below it — for people who still want to browse. The new section only steps in for the person who's already ready to decide.

Before

After

Four reasons for the placement

01

Answer the question they're already asking.

When someone taps "Browse by Popular Area," they have already decided where they want to go. The next natural question is: "Okay, so what is happening there this weekend?" By placing the new section directly below, I give them that answer immediately, so they don't have to ask the same question again using a search form.

02

Don't move what is already working.

The search bar, banners, and recommendations at the top of the page were already doing their job well. Putting something new above them would push those useful tools down and risk confusing people who are used to the current layout. Adding it to the middle of the page provides a shortcut without taking anything away or breaking the existing flow.

03

Reach people before they leave the page.

Even though 83.3% of bookings are for weekend events, users can only book them if they actually see them. Most people stop scrolling and leave the page before they reach the bottom. I placed this section in the middle because that is where most users are still paying attention. If I had placed it any lower, many users would have missed it entirely.

04

Follow the natural flow of the page.

Scrolling down the page feels like narrowing down your choices: you start with general recommendations, then filter by place, and finally filter by both place and time. Adding "Go This Weekend" at this specific point feels like the next logical step in a conversation, rather than a random interruption.

06  /  Outcome & an honest note on measurement

Feature shipped Sep 2025. Booking behavior changed — with an honest note on what the data shows and what it doesn't.

I compared 108 bookings pre-launch against 87 post-launch and identified three behavioral signals pointing to a shift in how users discover and book weekend events.

Signal 01

The planning shift

Same-day booking rate

Before

41.1%

After

23.1%

↓ 18pp

Median booking lead time

Before

1 day

After

4 days

↑ +3 days

Users stopped rushing on Saturday morning. Same-day bookings dropped from 41% to 23%, and for weekend events specifically, median lead time moved from 2 days to 6 — exactly the behavior the "This Weekend" tab was designed to support.

Signal 02

Cancellation improved — once decomposed

The headline cancellation rate went up. But splitting it by cause tells a completely different story.

User-initiated cancellations

improving

Before

21.1%

After

13.5%

The total rise was driven by the organizer side — nothing to do with the booking experience.

Measurement is a design deliverable. It belongs in the spec, not in the retrospective.

Reflection on measurement

The takeaway

Define the measurement plan before shipping — not after. Three things I would instrument from day one:

01

Booking conversion through the weekend section specifically — not just overall volume.

02

Cancellation type in the data schema — user-initiated vs. organizer-delisted, separated at the source.

03

Booking lead time as a dashboard metric — the strongest signal, discovered months too late.

07  /  Learnings

Four things this project taught me.

01🔍

Data finds the question. Frameworks find the answer.

The 83.9% weekend stat told me something was wrong. It didn't tell me what to build. That answer came from asking "what job is this product being hired to do?" — not from the spreadsheet.

02⚖️

Equal treatment is not always fair treatment.

The old search form gave every user the same five steps. In practice, the 83% majority did the most unnecessary work on every visit. Designing a shortcut for most people — while keeping the full path for the rest — turned out to be the more respectful choice.

03📊

Aggregate metrics can hide the truth.

Total cancellations went up after launch. If I had stopped there, I would have called it a failure. Breaking the number into user cancels vs. organizer delists revealed that the UX was actually working. Every metric worth reporting deserves to be decomposed by cause.

04📋

Ship the measurement plan with the feature.

The strongest success signal — the shift in booking lead time — was something I discovered in a retrospective, not something I tracked from the start. Next time, every spec I write will include a "how we know this worked" section before a single component is built.