Service Design · Facilities & Access · Accessibility

When the welcome experience isn't welcoming

How I unified Walmart's visitor check-in from twelve isolated, inaccessible systems into a single accessible service across every US and India campus - and why the hardest part had nothing to do with screens.

My Role
Lead Product Designer
Touchpoints
Kiosk · Web · Email · Admin portal
Team
UX, PM, Engineering, Security, Workplace Ops
Timeline
Nov 2024 - Oct 2025
Deployed check-in kiosks at Walmart campus lobby with multilingual Welcome wall Self-service check-in kiosk welcoming visitors to the Global People Center

A $500B company with a clipboard at the front door

When visitors arrive at one of Walmart's campuses, their first impression begins at the front desk. But each site: the 350-acre Home Office in Bentonville, the 338,000 sq. ft. Sunnyvale campus, the India Development Center in Bengaluru and Chennai, had its own process, technology, and security requirements. The result was a fragmented experience and a system that couldn't scale.

The California facilities required NDA signing. The India Development Center required device registration. The 8th & Plate food court needed a simplified flow for short-stay visitors. None of these variants talked to each other, and none had been designed with accessibility in mind.

Visit is a connected ecosystem, and decisions on any surface directly impact every other. A visitor who used a wheelchair had no guaranteed accessible path through check-in. A host wasn't reliably notified when their guest arrived. The legacy interface felt less like a welcome and more like a checkpoint.

Walk-in Kiosk Check-in
Twelve campuses, twelve different check-in processes. Visitors had no consistent experience, and security requirements varied by site.
Check-out and Multi-Building Access
Departures weren't tracked. Visitors moving between buildings had to re-check in, creating friction and security blind spots.
Preregistration Flow
A pre-arrival registration tool existed but almost no one used it. The flow was buried, confusing, and disconnected from how visits actually got scheduled.
Host Notification Logic
Hosts weren't reliably told when their guest arrived. The gap between check-in and host awareness created delays and lobby bottlenecks.

Sole lead designer, end to end

I joined as the sole lead designer on a cross-functional team: a product manager, engineers across two squads, a facilities program manager, and regional operations leads in both Bentonville and Bengaluru. I took ownership of a system with no unified design, no shared logic across campuses, and no accessibility compliance - and redesigned it from the ground up.

I owned every surface: the kiosk interface, the preregistration web flow, the email notification system, and the admin portal. I also led the accessibility strategy - WCAG 2.1 AA compliance shaped the interaction model from day one.

What I inherited had real constraints. Each campus had built its own solution to the same problem, optimized for local requirements with no shared architecture and no cross-campus visibility.

Hardware
Surface Go's compact screen meant every interaction had to be one decision deep. No room for multi-step panels or dense forms.
Connectivity
Unreliable at several sites. The system needed a full offline mode with paper fallbacks so security staff could run evacuations without a live connection.
Inclusivity
WCAG alone wasn't enough. Motion sensitivity, physical kiosk mounting heights, and screen reader support all had to be designed in from the start.
Fragmentation
Twelve campus implementations, each with its own logic and visual language. No shared component library, no cross-campus visibility, no rollback path.
Two visitors using the check-in kiosks at Bentonville HQ before the new design launched
Field observation: visitors at Bentonville HQ using the existing system. Each campus had its own implementation - same hardware, completely different flows.
Visitor using a wheelchair scanning their badge at a campus turnstile
Accessibility gap: for some visitors, check-in simply didn't work. No keyboard path, no contrast compliance, no reliable alternative. This became a non-negotiable constraint from day one.

The problem the software couldn't see

I spent time at check-in desks across campuses before touching any design tools. Every existing implementation had been built from the inside out: what does the system need to capture? Nobody had asked what the visitor, the host, or the front-desk associate actually needed to do. The screens were fine. The service around them had no connective tissue.

The check-in screen was just one moment in a larger chain: visitors, hosts, front-desk associates, security staff, and security managers all had different goals and zero shared visibility. None of the existing implementations connected those groups. Each ended at the screen.

"I end up re-entering half the visitors myself because the screen times out on them. None of that shows up anywhere." Front-desk associate, field interview

Three findings that changed the direction of the project:

1. Preregistration was the highest-leverage fix nobody had prioritized

Visitors who arrived pre-registered had dramatically smoother check-ins - but most visitors walked in cold, not because hosts didn't want to prep them, but because the preregistration tool existed in a separate system nobody knew about. The kiosk was doing the work that should have happened before anyone arrived.

2. Accessibility failures were creating invisible operational load

Front-desk associates were routinely stepping in to complete check-in on behalf of visitors who couldn't navigate the existing interface - touch targets too small, no keyboard path, contrast ratios that failed in direct sunlight. None of this showed up in any usage data. The workaround had become the process.

3. Hosts had no real-time awareness when their visitor arrived

Visitors would complete check-in and then wait in the lobby (sometimes for extended periods) because hosts had no notification. Security associates had flagged this repeatedly. There was no mechanism in any existing campus system to solve it.


Getting everyone to agree was the real design challenge

Getting alignment took longer than the design itself. Each campus stakeholder had a different definition of "welcoming", and sequential review cycles were stalling progress. Leadership could engage with visual concepts more readily than with information architecture or service flows, so the landing page became a proxy for confidence in the entire system. Every review became a debate about hero images and background videos.

I recognized what was actually happening: stakeholders hadn't yet built a shared mental model of the system, so the landing page became the place that anxiety surfaced. Every review anchored on the one thing they could see and react to.

Instead of continuing sequential reviews, I restructured the process. I presented the full range of landing page directions simultaneously (video backgrounds, image carousels, static photography) with each option's tradeoffs made explicit and tied back to the campus experience goals we'd already aligned on. By making the decision space visible rather than funneling toward a single recommendation, I gave stakeholders a way to converge without feeling overruled.


Three user groups, one coherent service

I mapped the full experience across three user groups: walk-in visitors, invited visitors who pre-registered, and Walmart associates acting as hosts. Each journey exposed different failure points. Together they revealed where the service needed to connect across touchpoints and teams.

User journey map for walk-in visitor scenario showing stages, goals, actions, pain points, emotions, and opportunities
Walk-in visitor journey: opportunities row drove every kiosk screen decision - each traces to a specific field observation.
User journey map for invited visitor who pre-registered through the preregistration flow
Invited visitor journey: the biggest drop-off happened before arrival - hosts had a tool nobody knew existed. Fixing the invite flow was the highest-leverage change.
Journey map for the host - Walmart associate who sends the invite and receives visitor arrival notifications
Host journey: notification latency was the most-flagged pain point in associate interviews - hosts had no reliable signal that their visitor had arrived.

Unified UI, Local Logic

The core design challenge was building one system that could adapt to genuinely different campus requirements without fracturing the experience. The answer was a configurable flow architecture: the same interface, with location-aware steps that activate based on facility type. NDA signing for California. Device registration for IDC. A streamlined short-form for 8th & Plate. All on one codebase, all on the same Surface Go hardware.

For walk-in visitors (who arrive with no advance context, often stressed, often running late), the kiosk had to be operable in under 60 seconds without instruction. I prioritized progressive disclosure (one decision per screen), large touch targets sized for the Surface Go's compact display, and immediate error recovery. The result handles the 80% case fast and routes the 20% exceptions without creating lobby bottlenecks.

Standard kiosk flow: the core check-in experience, designed for cross-campus consistency. Photo capture, host selection, and badge print in one linear sequence.
8th & Plate variant: streamlined for the food court environment - minimal required fields, family group check-in, optimized for high-volume foot traffic.

Check-out and multi-building access

Visitors moving between buildings scan their badge at each entry and exit point, with no repeated full check-ins required. Every scan syncs in real time to the Visit Admin portal, giving security teams a complete, time-stamped record of campus movement. This live tracking was a net-new feature: the legacy system had no cross-building visibility at all.

Kiosk setup and check-out mode: any kiosk can be configured to switch between check-in and check-out, giving front-desk associates the flexibility to allocate devices based on what the lobby needs at any given moment.
Visit Admin Portal visitor profile showing check-in and check-out records by time and location
Visit Admin Portal: every badge scan syncs here in real time, giving security teams a complete, time-stamped view of who is on campus and which buildings they have accessed.

Preregistration: front-loading the friction

Visitors who arrived pre-registered cleared check-in significantly faster. The problem: most visitors arrived cold, not because hosts didn't want to prep them, but because the preregistration tool existed in a separate system that almost nobody knew about. I connected the preregistration link directly to the host's calendar invite, so sending the invite and sending the prep link became a single action. The visit experience was now shaped before the visitor left home.

The preregistration flow is also where the platform's configurability is most visible. The same flow activates location-specific steps silently in the background - visitors only ever see what their specific visit requires.

Standard preregistration flow: the core experience a host sends to any invited visitor. Completion before arrival cuts kiosk time significantly and pre-populates the check-in screen on arrival.
Preregistration invite: sent to the visitor when the host adds them to the calendar invite. Contains the registration link - no separate action needed from the host.
Digital badge: delivered to the visitor after completing registration. Presented at arrival to scan in - no kiosk queue needed.

Host notification: closing the loop

Any completed check-in (whether a walk-in visitor at the kiosk or a preregistered visitor scanning their digital badge) triggers an immediate notification to the named host. In the legacy system nothing happened at this point. I designed a real-time alert that defaults to no action required: if the host is expecting the visitor, they simply go to the front desk and escort them in. Only if the visitor is unexpected does the host need to act, with a single tap to decline. When declined, the front desk associate receives an automatic notice and handles the guest - no phone call needed, no manual escalation.

Host notification: sent the moment check-in completes, for both walk-in and preregistered visitors. Visitor photo and arrival time included. No action needed if the host is expecting them - one tap to decline if not.
Front desk rejection notice: if the host declines, the front desk associate in that building is notified automatically. They handle the guest out - security is informed without a separate call.
Host response interface: a single decline tap is all that's needed. No confirmation required for expected visitors. When declined, lobby status and the front-desk display update in real time - the security associate sees the change without a separate call.

Accessibility built into the practice

A wheelchair user at the Bentonville HQ turnstile had no guaranteed accessible check-in path. A security associate had flagged this gap for over a year before design started. I built the interaction model keyboard-navigation first, so every touch interaction had a keyboard equivalent from day one.

Before any screen went to engineering, it was validated against a shared accessibility checklist the team maintained across all products. Annotations were embedded directly in the Figma file (contrast ratios, focus order, screen reader labels) so developers had no ambiguity at handoff. Structured QA notes tracked every identified issue through to resolution before launch.

Team accessibility checklist: standardized reference maintained across the design team to validate compliance before any screen goes to handoff.
Annotated design deliverable: accessibility notes embedded directly in the design file (contrast ratios, focus order, screen reader labels) as the engineering handoff spec.

What changed, and how we measured it

The system shipped to all US campuses and then rolled out to Bengaluru and other India locations - becoming the global standard for Walmart campus visitor management. Deployment is a milestone. Here's what actually changed:

30%
reduction in average visitor processing time across all campuses post-launch
increase in preregistration completion rate
~60%
fewer front-desk escalations at high-traffic campuses in the first quarter post-launch

Early qualitative feedback from security, reception, and facilities teams showed smoother front-desk operations, fewer repeated check-ins for multi-building visits, and faster host response. The admin portal eliminated the most common manual override (associates re-entering visitor data after kiosk timeouts), which had driven a significant share of front-desk escalations at high-traffic campuses.


What I'd do differently

This project delivered what it set out to. But looking back at the constraints and trade-offs, three things stand out:

  • I'd instrument the service earlier. We had almost no baseline data when we started - check-in times, preregistration rates, accessibility-related escalations were all unmeasured. I ended up building measurement into the system during design, but it took advocacy to get engineering to prioritize it. Measurement should have been scoped into the project from the start.

  • I'd push harder for a pilot-then-scale rollout. We launched across all US campuses nearly simultaneously. In retrospect, a single high-traffic campus pilot with a six-week learning period would have surfaced the group-booking edge cases we discovered through support tickets post-launch - and saved two engineering sprints of fixes.

  • I underestimated the front-desk associate as a design partner. I interviewed them early, but treated them as user-research subjects. I should have brought two of them into the design review process as co-reviewers - they caught workflow gaps in beta testing that I missed because I was too close to the designed flow.

Facilities & Access Service Design Accessibility · WCAG 2.1 AA Physical + Digital Kiosk UX
Visit Admin Portal
Related work

Visit Admin Portal

The CMS and permissions layer behind the check-in experience - managing visitor records, multi-building access, and self-service administration at scale.