Screenshot of hospitality request portal homepage
Screenshot of hospitality request portal packages page

Building the Guest Management Platform for the Olympic Games

Building the Guest Management Platform for the Olympic Games

TIMELINE

January 2025 - September 2025

FORMAT

Responsive Web

ROLE

Senior Product Designer

Olympic Hospitality Ecosystem

I designed two interconnected B2B platforms for TKO's Milan 2026 suite: the Hospitality Request Portal (HRP), which streamlined package requests, and Guest Management, which centralized guest data and operations for global sponsors and partners.

Olympic Hospitality Ecosystem

I designed two interconnected B2B platforms for TKO's Milan 2026 suite: the Hospitality Request Portal (HRP), which streamlined package requests, and Guest Management, which centralized guest data and operations for global sponsors and partners.

Olympic Hospitality Ecosystem

I designed two interconnected B2B platforms for TKO's Milan 2026 suite: the Hospitality Request Portal (HRP), which streamlined package requests, and Guest Management, which centralized guest data and operations for global sponsors and partners.

TL;DR
  • Guest Management became the operational backbone of the Milan 2026 Olympic hospitality suite — the system every sponsor and partner relied on to manage, assign, and update guest data across thousands of packages.

  • When I joined, there was no central source of truth — guest data lived in spreadsheets and siloed tools, causing errors that rippled across modules.

  • I led the end-to-end design of a new, unified product: defining the information architecture, data relationships, and interaction patterns that could scale for thousands of guests.

  • Partnered cross-functionally with product, engineering, and operations to align UX with complex data models and evolving Olympic business rules.

  • What began as a simple guest-management tool evolved into a foundational platform — one that made the rest of the ecosystem possible.

Background

While designing the Hospitality Request Portal (HRP), we uncovered a deeper gap: users could request hospitality packages—but had no centralized way to manage the people behind those requests.

Guest data lived in spreadsheets, shared drives, and email threads, creating mismatches and operational risk. HRP solved how packages were requested; Guest Management needed to solve who they were for.


That insight led us to design Guest Management as the next evolution of the platform—built on HRP’s foundation, sharing its design system, authentication model, and core data structures.

Every module—from Seat Assignment to Accommodation Assignment—depended on it for accurate, up-to-date guest data.


The challenge was balancing scale and simplicity: creating a system robust enough for Olympic-level complexity, yet clear enough for non-technical users managing thousands of records under fixed timelines.

Responsibilities & Key Contributions
  • Product Design

    IA, user flows, screen design, interaction models, and microcopy from discovery through launch

  • Design System Contributor

    Added new components and patterns to our shared design system (e.g., Bulk Import, status chips, tabbed navigation, progress checklist)

  • Collaborator

    Worked with PMs, engineers (FE/BE), QA, business analysts, and another designer to map UX to the data model and technical constraints

  • Strategic Partner

    Influenced MVP scope by helping PMs and engineers prioritize usability-critical workflows under fixed Olympic deadlines, ensuring we shipped a version that was both stable and scalable.

Problem Identification

We lacked a single source of truth, creating:

    1. Duplicate and inconsistent records

  1. Guest information was re-entered across systems, leading to errors and mismatched data.

    1. Unclear assignment status

  1. There was no simple way to see which packages were complete or who was still unassigned.

    1. No delegation of guest management

  1. Large sponsor organizations had to funnel all edits through a single purchaser, slowing progress.

    1. Downstream operational risk

  1. Inaccurate or incomplete data flowed into on-site operations, making it difficult to prepare transport, accreditation, and other guest services.

Across hundreds of corporate clients and thousands of guest records, these issues created operational bottlenecks and risked compromising the on-site experience — a mission-critical concern ahead of the Games.

Goals

BUSINESS

  • Consolidate fragmented workflows

    Replace spreadsheets and third-party tools with one centralized product that serves as the single source of truth for all guest data.

  • Reduce operational overhead

    Simplify how both clients and internal teams manage guest information, lowering support volume and manual coordination.

  • Establish a scalable framework

    Build a flexible system that can extend beyond Milan 2026 — powering future Games and hospitality programs with minimal rework.

USER

  • See progress at a glance

    Give purchasers a clear overview of assignment and guest detail-completion status without digging through multiple systems.

  • Work efficiently at scale

    Allow users to upload, edit, and manage large volumes of guest data through familiar tools like bulk imports.

  • Delegate safely and collaboratively

    Enable role-based access so purchasers can share responsibilities across large sponsor organizations without losing control.

  • Stay oriented in complex data

    Design predictable patterns and calm interfaces that reduce cognitive load and make even large-scale data feel manageable.

Audience

Corporate sponsors, agencies, and hospitality managers: deep Olympic context, not necessarily technical. The experience needed to feel enterprise-grade yet human, handling thousands of records without overwhelming the user.

Process

Discovery & Alignment

We began by defining how Guest Management would integrate into the broader hospitality ecosystem. From the start, we positioned it as the data foundation supporting other modules like Seat Assignment, Accommodation, and Onsite. Together with the PM and engineers, I helped define the product’s core features: uploading guests in bulk or one at a time, editing or reassigning them, inviting guests to fill in their own details, and giving certain users “Guest Manager” access so they could share the work.


A major focus during discovery was distinguishing between guest-level information that persists across all packages and package-level information that varies by assignment. Mapping these relationships early with engineering prevented data cross-contamination and shaped how the entire interface would scale.

Homepage — A Command Center

The Homepage became that central command center. It presented every package a user purchased in one view, with key progress indicators showing how far along each was in the guest assignment process. To match how our clients naturally organized their workflows, we introduced a tabbed structure with three clear sections:


  1. Packages, the primary view showing progress and next actions

  2. My Guests, focused on profile completion

  3. My Managers, which surfaced collaboration and delegation


At the top, status filters (All, Not Started, In Progress, Complete) let users quickly narrow down what needed their attention. Each row in the table separated Package, Status, and Actions into consistent columns for easy scanning, with actions right-aligned to match reading patterns.


To improve performance and give users a stronger sense of orientation, we used pagination rather than infinite scroll. And for high-volume users, a Bulk Import card was added to the header, providing an immediate way to upload or download templates for managing large data sets. It could be minimized once the task was done, keeping the page focused on what mattered most: visibility and progress.


Together, these decisions turned what was once a manual, fragmented process into a centralized dashboard — allowing purchasers to track hundreds of packages confidently and know exactly where to focus next.

Homepage tabs and status filters with Bulk Import entry point.
Homepage tabs and status filters with Bulk Import entry point.
Homepage tabs and status filters with Bulk Import entry point.

Package Details — Managing Guests Within a Package

Purchasers needed an easy way to see the details of a specific hospitality package — who was assigned, how many guests were covered, and what information was still missing. The homepage gave them a broad view across all their packages, but there was no dedicated space to manage the details of one package in depth. Without that, it was difficult to confirm completion, track progress, or identify missing guest information before sending data to operations.


The goal was to create a clear, focused page that allows purchasers to manage guest assignments within a single package — showing exactly who is assigned, what details are complete or missing, and what next actions are required. This page needed to help users feel confident that every guest associated with a package was accounted for and ready for the Games.


The Package Details page gave users a structured view of who was assigned to a package and what tasks remained. The header surfaced key package information at a glance, with a “Show More” option revealing additional metadata for those who needed deeper context.


A guest capacity indicator clarified how many guests could still be added — for instance, ten double rooms meant space for twenty guests — reducing confusion and support questions. On the right, a Task panel summarized the actions users could take, such as assigning guests or completing missing details.


The main table listed each guest’s name, completion status, and any required next steps. Buttons for incomplete tasks were given stronger visual weight to help users quickly spot what needed attention. Together, these elements created a page that balanced visibility, control, and clarity — helping users finalize assignments confidently and reducing last-minute data errors.

Package view with capacity indicator and task panel.
Package view with capacity indicator and task panel.
Package view with capacity indicator and task panel.

Guest Details Form — Designed for Clarity and Completion

The Guest Details form was built to capture everything our operations teams needed to deliver a smooth, personalized hospitality experience — from contact information and dietary needs to accessibility and travel details.


During the Paris 2024 cycle, form adoption was low. The guest detail process lived inside a third-party system with a confusing layout, and many users didn’t understand how to complete it. As a result, customer support was flooded with calls, and guest operations often lacked the information they needed to plan transport, accommodations, or on-site experiences.


To address this for Milan 2026, we made Guest Detail form completion a required step in the package-assignment workflow. By tying it directly to a core task, we ensured that users couldn’t finalize assignments without completing the necessary guest information. This helped draw more attention to the form and encouraged higher completion rates across the board.


We also wanted the form itself to feel intuitive rather than burdensome. It combined guest-level information (shared across all packages) and package-specific details (unique to each booking) in a single, organized layout. To help users stay oriented, the form opened as a sidebar beside the main table so they could complete information without losing their place.


Since many purchasers worked with partial data, the form allowed non-linear completion — users could fill in what they knew and return later. We also added an “Invite Guest to Add Details” option, letting purchasers delegate data entry directly to guests.


At the top of the form, a progress checklist clearly showed which sections were complete, incomplete, or had errors. This made progress visible, supported accountability, and reinforced the new completion requirement — all of which helped improve adoption and data quality ahead of the Games.

Guest Details sidebar with progress checklist and section anchors.
Guest Details sidebar with progress checklist and section anchors.
Guest Details sidebar with progress checklist and section anchors.

Bulk Import — Supporting Familiar Workflows at Scale

Many of our users managed hundreds of guests across multiple packages and were accustomed to working in spreadsheets. While Guest Management offered a more structured and reliable system, requiring users to enter each guest individually would have made large-scale data entry slow and frustrating. Without a faster import method, adoption risked dropping — especially among long-time Olympic partners used to offline workflows.


We wanted to create a feature that allowed users to continue working in a familiar spreadsheet environment while gaining the benefits of our centralized system. The experience needed to feel native to how they already worked but still tie into Guest Management’s validation, assignment tracking, and collaboration features.


We introduced a Bulk Import card within the global header — an entry point for users to download templates, complete assignments in bulk, and re-upload the data directly into the platform. This approach let them move quickly in a familiar format while still benefiting from real-time validation and progress tracking once their data synced back into the system.


To minimize visual clutter, the card could be collapsed once the import was complete, keeping focus on ongoing tasks. The result was a faster, smoother process for high-volume users and a key step in bridging legacy workflows with a scalable, centralized platform.

Create Password screen with a full-screen-sized image of someone snowboarding and a dialog where users can create their password
Create Password screen with a full-screen-sized image of someone snowboarding and a dialog where users can create their password
Create Password screen with a full-screen-sized image of someone snowboarding and a dialog where users can create their password
A full-screen-sized image of someone skiing on a snowy trail with a dialog where users can login to HRP towards the right
A full-screen-sized image of someone skiing on a snowy trail with a dialog where users can login to HRP towards the right
A full-screen-sized image of someone skiing on a snowy trail with a dialog where users can login to HRP towards the right
Constraints & Trade-Offs
Designing for a multi-layered data model required strict separation between guest-level and package-level fields, demanding clear labeling, guardrails, and extensive review states. To manage scalability, we introduced accordions for multi-instance guests—effective for reducing scroll but heavier cognitively and technically.

For performance, we prioritized pagination over continuous scrolling, improving speed and preserving orientation even though it added an extra step in navigation. Finally, because of tight Olympic timelines, formal usability testing wasn’t possible before launch. Instead, we relied on instrumentation, early stakeholder pilots, and support feedback to identify pain points and validate assumptions.
Outcome & Early Impact
Guest Management launched as the central hub of the hospitality suite, consolidating fragmented workflows into a single, cohesive platform. The new experience reduced manual handling through centralized upload and assignment, improved data accuracy across dependent modules, and enabled closer collaboration between internal and external teams through role-based delegation.
What Didn’t Go as Planned
Some design decisions surfaced unexpected challenges after launch. The accordion structure, while effective at managing dense information, slowed cognition for users managing many package instances.

Due to tight deadlines, we couldn’t run full usability testing before launch and relied on usage data and pilot feedback instead. And as Guest Management became the base for other products, new requirements kept appearing near the end of development, forcing us to adjust our scope and priorities several times.
What I'd Do Differently
In future iterations, I’d consider shifting Guest Management from a package-first model to a booking-first model. This would align it with the Hospitality Request Portal (HRP) and other e-commerce products in our suite, creating a more consistent mental model for users and simplifying how data flows between systems.

I’d also run small usability sessions during development instead of waiting until after launch to focus only on analytics. I'd work earlier with engineers to set validation rules that prevent errors before they happen. Lastly, I’d design the overall structure to better support future growth, so new features could plug in without reworking the entire product.
What I Learned
This project reinforced that a clear structure makes change easier. When business needs shift, a solid foundation allows the product to adapt instead of breaking. I also learned that complex systems don’t have to feel complicated — good layout and plain language can make large workflows approachable. Working closely with engineers showed me how understanding the data is part of good UX.

Beyond design, I learned how to align cross-functional teams around shared data ownership — a skill that proved essential in navigating a high-stakes, multi-stakeholder environment.