Case

Rethinking a time table

Balancing accessibility, information hierarchy, and conversion for millions of daily searches.

The Accessibility Challenge

SJ's existing timetable worked for some users, but failed millions of others. The design system's new beautiful cards hid crucial pricing information, while the old table-based layout couldn't scale text without losing all hierarchy.
When 40% of your users have enlarged text settings, and screen readers can't parse your content logically, you have a problem that goes beyond aesthetics.

The challenge:

• 40% of users with enlarged text settings
• Ok screen reader experience but some illogical reading order
• Pricing information buried behind extra clicks
• Cards too tall for mobile - only 1.5 departures visible
• Impossible to add new travel classes to existing structure

The new time table designed to not losing hierarchy and readability when text are scaled

Research & Discovery

We ran 2-3 user tests to understand both the existing experience and design system variants. Combined with web analytics from their earlier release, we saw clear patterns: users needed pricing transparency and better overview without sacrificing accessibility.

We partnered with an external accessibility agency for a thorough audit, identifying specific barriers in both design and function. The biggest insight: beautiful doesn't mean usable if people can't actually use it.

User test

Two Views, One Experience

Instead of forcing one solution, we created two complementary views:

Card view
Rich information with train illustrations for each departure type, perfect when you need detail and context.

List view
Minimal height per departure, maximum overview, scales perfectly to 2x text size while maintaining clear hierarchy.

Smart pricing menu
Choose your preferred class and see those prices across all departures - no more clicking through to compare first-class fares.

Accessibility-first Design Decisions

Text scaling: 
Works perfectly at 2x size without losing information hierarchy

Screen reader flow:
 
Logical, chronological reading order for all departures

Visual support:
 
Icons paired with text, never standing alone (except universally  understood train features)

High contrast:
 
Built into every color decision

Traffic information:
 
Integrated directly into cards/list for immediate context

Darkmode support

Screen reader now don't repeat it self and tell things in the right order, text scales well, keeping the most relevant information easliy scanable for the eye.
Use keyboard to navigate and select journey

Testing & Iteration

We user-tested our redesigned timetable 3 times, refining copy and information hierarchy based on real user behavior. The external accessibility audit helped us catch edge cases we'd missed.

Launch strategy:

We defaulted to card view initially, but quickly noticed users preferred the list view for its superior overview. We switched list to default with smooth transitions to cards when users needed more detail.

Results & Impact

• 40% of users with enlarged text now get the same experience as everyone else
• Screen readers can navigate chronologically without confusion
• Pricing transparency improved without sacrificing overview
• Successfully accommodated new travel classes (2nd Class Quiet)
• User feedback praised simplicity and scannable information

Trade-off honesty:
Some users miss seeing all prices at once, but the majority appreciate the cleaner, more accessible experience.

What I Learned

This project taught me that inclusive design isn't about adding accessibility features later - it's about making accessibility the foundation of every design decision. When you design for the most constrained users first, you create better experiences for everyone.


Showing the all different variation of the table content

Featured work

view project
view project
view project
view project
view project