Goals
Reduce customer churn and boost satisfaction
Enhance platform engagement and retention
by transitioning customers from third-party tools and resolving their cases
+
API
Before
After: 9 new settings were added, along with sticky anchor navigation for quick access, and switchers that save space when turned off.
Team Booking Widget: the user can start by choosing a service or selecting a practitioner.
Badges that visually differentiate Programs and Packages
Login and adding quests
Ability to insert an intake form into the booking process
Team member Booking Widget
Choosing date and time
Checking details and policies before payment
Checkout
Final confirmation

Before the rebuild, users can choose Client, Host, and Service in any order.

Integrating a third-party solution imposed a hard constraint: steps had to follow a specific order.
1.Enabling a team admin to choose by host
Use case
“As a team admin with 20+ hosts, I don’t remember which type of session provides by particular host, so when I schedule a session I want to select a host first.”
Solution
Since the session list must be shown first, I added a filter that allows filtering all sessions by practitioner, so team admin can see only the sessions provided by the chosen host.
2.Providing indicators for clarity
Use case
Scheduling can be initiated from CRM or a client card, where a client is already preselected.
Solution
I added an indicator to show that the client has been previously selected and this information is saved.
3.Combining two similar flows for consistency
Use case
Offering a service and scheduling a session involve almost identical steps. The main difference is that in scheduling, only sessions should appear in the list, while in offering, the list can include Packages and Programs. Additionally, sessions that clients have already purchased need to be displayed while sheduling.
Solution
To ensure consistency, I made these flows visually similar and adjusted the scheduling flow by adding a filter for Clients. This filter allows Practitioners to easily find sessions already purchased by a particular client within the scheduling flow.
1. Scheduling a recurrent session has become easier
Learning
During usability testing, we confirmed our concerns about availability constraints. The Calcom API only allows setting up recurrence frequency on the practitioner side, which causes several issues:
❌ Practitioners must create a new Service each time they want to change the recurrence
❌ This results in numerous duplicates of the same Service
❌ It's easy for users to overlook this step when creating a Service.
Solution
Data from usability testing revealed that we cannot proceed without implementing recurrence at the appointment level. Therefore, the delivery date was postponed, and we refined the solution:
✅ Recurrence at the appointment level allows practitioners to use one Service for different schedules.
✅ It eliminates duplicates of the same Service.
✅ Choosing recurrence at the scheduling step is hard to overlook.
Before

After
2. Confusing setting has been improved
Learning
The Hosts and Location section confused test participants, and the Scheduling Type section raised many questions during the tests. Participants couldn’t figure out what this section allowed them to set up.
Solution
I added icons to illustrate every option, making it more scannable, and preselected the first option as the most popular one so users don’t need to choose it when they first create a service. Additionally, we updated the copy to make it clearer.
Before
After
3. Design of the slide out has been altered to better serve high volume cases
Learning
All participants raised a concern about high volume of services cases and the convenience of choosing a service from the long list.
Solution
I regrouped the list of services by type (which respondents identified as the most useful criterion) and added a filter by type of service for quicker searches. Additionally, we enabled search by the name of the package and program, not just by the name of the session.
Before
After
In addition, we've started to receive positive feedback from our clients 💙





























