Availability

A booking system needs to know when someone is unavailable to avoid booking them when they're busy.


In our software, this was difficult and error prone for coaches to setup, so we redesigned the availability feature to make it easier to use, and added new functionality to make it more robust.

View Availability and Send Reminders

I redesigned two calendar views so that gym owners could see availability across coaches, and quickly send setup reminders.

Clearer differentiation of availability states → fewer rescheduled bookings.

New setup incomplete state → higher adoption.

New send reminder functionality → more efficient task completion.

Send reminder / instructions functionality → more efficient task completion.

Setup Availability

I redesigned the pages for a coach to setup their availability, combining related settings into a single view.

Consolidation of two pages → improved efficiency and adoption.

New descriptions and visuals → decreased views on related help documentation.

Flexible Working Hours

I added functionality so that coaches could create multiple blocks of working hours per day.

Highly requested feature → decreased churn and increased sales close-rate.

New copy feature → improved setup efficiency.

Clearer differentiation of unavailable days → improved error rate in usability testing.

Connected Calendars 2.0

I redesigned the flow for connecting an external calendar, and worked with engineering to improve error-prone availability logic.

Improved sync logic so that the following Google event settings were considered in availability: out of office events, busy / free designation, all-day events, and "going" response.

Added expired token state so that a coach / admin would know if there was an issue with a connected calendar.

Added logic so that sync was triggered automatically after calendar connection.