← Research Apps← Apps Rome2Rio Study
Product teardown · Reference canvas

Rome2Rio iOS app: screens, flows & how it works

Rome2Rio is a multimodal trip planner. You enter any two places and it shows every way to make the trip (train, subway, bus, taxi, rideshare, private transfer, driving, walking, flights), each with time, distance and price range. It then shows real schedules, where to buy tickets, and hotels at the destination.

📱 Every screen below comes from a real screen recording of the iOS app (5 Nov 2026, iPhone, prices in ₹), covering Tokyo → Shinjuku, hotels in Shinjuku/London and Lisbon → Sintra. Click any screen to enlarge it, then use ← → to browse. Internal study reference only.
01

What the app is & why it exists

The problem: getting from A to B often means mixing transport types and checking several websites. Rome2Rio puts every option on one screen, then goes deeper into schedules, tickets and hotels.

What the name means

Rome2Rio = “Rome to Rio”: Rome (Italy) to Rio de Janeiro (Brazil). The “2” stands for “to”. The two cities are on different continents, so the name says the app can plan a trip from anywhere to anywhere.

A → B
Any city, station, airport, neighbourhood or landmark
3 tabs
Search · Hotels · Profile
Free
Unlimited searches; the app earns from partners and ads
Omio
Parent company since 2019

Core value

  • Discover: every way to travel, including options you didn't know about
  • Compare: BEST / FASTEST / CHEAPEST badges, time, distance, price range
  • Plan: real schedules, stops, operators, where to buy tickets
  • Stay: hotels at the destination through Booking.com
  • Inspire: explore countries and nearby day trips

What it is not

  • Not a ticket seller. It sends you to operators or partners (opens in the browser)
  • Not turn-by-turn navigation
  • No account or trip wallet in this version: the Profile tab has preferences only
02

Key features (seen in the recording)

⌕ Smart place search

Recent places and “Popular destinations from [origin]”, each with travel time and mode.

⇄ Multimodal results

Subway, bus, train, taxi, rideshare, private transfer, drive and walk, each tagged BEST, FASTEST or CHEAPEST.

◎ Map

A map at the top of results that expands to full screen with all route lines.

🕑 Schedules

Real departures by day, sortable (Departure / Cheapest / Fastest), with a time picker and stops/duration filters.

👥 Passenger types

Adult / Youth (with age) / Senior; prices update to match.

☰ Journey details

Timeline with times, line, expandable stops, and “Find tickets”.

🎫 Where to find tickets

Operator cards with lines, price, frequency, phone, website and vehicle photos.

🛏 Hotels

Hotels tab with list/map, budget, review and star filters, sort, and multiple rooms. Booking happens on Booking.com.

🌍 Explore

Country inspiration pages with origin-based day trips and travel-time chips.

03

Who uses it

🧳 Tourist in a new city

“How do I get from Tokyo Station to Shinjuku?” Wants the subway line, the stops and the price.

🎒 Budget traveler

Sorts by Cheapest and picks the bus or rideshare over a taxi.

💼 Time-poor traveler

Picks the FASTEST option and goes straight to “Find tickets”.

👨‍👩‍👧 Family / group

Sets youth ages and books multiple hotel rooms.

🗺 Day-tripper

Uses Explore → “Portugal from Lisbon” to find trips like Sintra or Cascais.

🏨 Trip planner

Plans the transport and the stay in one go (“Staying in Shinjuku? Find hotels”).

04

All screens (37 real screenshots)

Grouped by feature area. S-numbers are referenced in the flowcharts below.

B · Route results

Every way to make the trip, with a map on top and option cards below. Hotels and ads are mixed into the list.

S06Results + mapMap with route lines at the top, then option rows: Subway 10 min ₹100–140 (BEST), Bus 39 min ₹126, Taxi 7 min ₹2,300–2,900 (FASTEST), Walk.
S08Full-screen mapExpanding the map shows all route lines across the city, with a close (✕) button.
S07Hotels + ad in resultsBelow the routes: a “Hotels in Shinjuku” carousel with View more, followed by a sponsored app-install ad (Google Gemini).
S36Results (another trip)Lisbon → Sintra: Line 18200 train (BEST), Rideshare (CHEAPEST), Private transfer, Taxi and Drive, each with time, distance and price range.
S37Drive option + hotelsThe Drive row shows 25 min · 27.8 km · ₹539–778, then the “Hotels in Sintra” carousel.

C · Schedules

Tapping a transit option opens real departure times, which you can sort, filter and change by date and passengers.

S09Loading schedulesSkeleton screen with a toast: “Getting the best options for you. This may take a few seconds.”
S10Schedules list (subway)Header: Tokyo → Shinjuku, date chip (6 Nov), passenger chip (1). Controls: Departure sort · 6:00 AM · Filters. Each row: times, operator, direct/duration, price, and Details ▾.
S16Schedules list (bus)Bus departures (JR Bus Kanto 23:10 → 23:55, ₹126) grouped by day (Thu 5 Nov, Fri 6 Nov, Sat 7 Nov).
S17Time pickerDropdown to choose the earliest departure time (12:00 AM to 11:00 PM).
S18Sort menuSort by Departure, Cheapest or Fastest.
S19Filters sheetStops (Direct / 1 change / 2+ changes, each with a result count), Duration slider, Clear all, and “Show 9 results”.
S11Feedback + operatorsBottom of the list: “Was this helpful?” 👍👎, then Operator cards (Toei Subway, Tokyo Metro) with price, frequency and More details.

D · Journey details & operators

The step-by-step view of one departure, plus how and where to buy tickets.

S12Journey detailsTimeline: 06:02 Tokyo → 06:19 Shinjuku-sanchome, line name, 7 stops. Cross-sell: “Staying in Shinjuku? Find hotels”. Pink “Find tickets” CTA.
S13Stops expandedTapping “7 stops” lists every intermediate station.
S20Journey details (bus)Tokyo Station Yaesu South Exit 23:10 → Shinjuku Expressway Bus Terminal 23:55. “Where to find tickets” lists the operators: Toei Bus, Keio Bus, JR Bus Kanto.
S21Operator infoFor each operator: Lines, Where to find tickets (operator website link), Price, Frequency & duration, Contact details, Useful links.
S22Operator photosA photo gallery of the vehicles (bus interior and exterior) helps users recognize the service.
S23Call operatorTapping the phone number opens the iOS call dialog.
S24Operator website“Useful links” opens the operator's own website in the browser (here, the Toei Transportation site).

E · Passengers

Choosing passengers from the schedules screen updates the prices.

S14Who is travelling?Steppers for Adult (26+), Youth (0–25) and Senior (58+). Pink Confirm button.
S15Youth age pickerEach youth needs an age (Less than 1 year … 12 years old). A warning shows until every age is set: “Add the age of each passenger to continue”.

F · Hotels

The second tab. Hotels open on a partner site (Booking.com, co-branded with Rome2Rio).

S25Hotels listSearch pill (Shinjuku · 6–7 Nov · 1 room · 1 adult). Cards show photo, stars, distance from destination, review score, a discount badge, struck-through price, total incl. taxes and a pink arrow.
S27Edit your searchLocation, dates and guests/rooms fields, plus the pink Search button.
S28Hotel destination search“Where to?” with popular destinations near the current place and their travel times.
S29Guests & roomsRoom 1, Room 2 … each with Adults/Children steppers. Add another room, Remove room, Apply.
S30LoadingSkeleton cards while hotel prices load.
S31Map + listPrice pins on a map above the hotel list. Best and Filters buttons.
S32Hotel filtersYour budget (histogram + min/max), Review score (Superb 9+, Very good 8+, Good 7+, Pleasant 6+), Property rating (5/4/3 stars), Clear all, Apply filters.
S33Hotel sortBest · Price (lowest first) · Price (highest first) · Review score (highest first).
S26Partner page (Booking.com)Tapping a hotel opens Booking.com's Rome2Rio co-branded search in the browser, where the booking is completed.

G · Profile

The third tab: preferences and info pages.

S34ProfileCurrency, Distance (units), FAQs, About Rome2Rio, Privacy Policy, Terms of Use, Send Feedback. There's no sign-in or trips screen in this version.
05

User flows (flowcharts)

Based on the navigation in the recording. [Sxx] refers to the screens above.

Start App screen Action / step Decision External (browser / phone) Goal reached

Flow A · Core flow: search → compare → schedule → tickets

The main path through the app.

Open app lands on Search tab
Explore home [S01]
Recent trip?
Yes
Tap “Continue where you left off”
No
Where from? → Where to? [S03] [S04]
Tap Search [S05]
Route results + map [S06] · full map [S08]
Compare BEST / FASTEST / CHEAPEST, time, price
Option type?
Transit
Schedules loading [S09] → list [S10]
Adjust date · time · sort · filters · passengers [S17][S18][S19][S14]
Journey details [S12] stops [S13]
Find tickets / Where to find tickets [S20][S21]
Operator site or call ↗ [S24][S23]
Ticket bought
Drive / Taxi / Walk
Read time, distance, cost [S37]
Decision made
Need a stay
“Hotels in X” carousel or “Find hotels” [S07][S12]
→ Flow C (Hotels)

Flow B · Explore / inspiration

The user has no destination yet.

Explore home [S01]
Scroll: “Planning your next trip?”
Country grid [S02]
Explore Portugal From Lisbon ▾ [S35]
Tap destination (Sintra · 40 min)
Results Lisbon → Sintra [S36]
Continue in Flow A

Flow C · Hotels

From the Hotels tab or a cross-sell in results.

Hotels tab / “Find hotels”
Hotels list [S25]
Change search?
Yes
Edit search place [S28] · dates · rooms [S29]
No
Keep results
Loading skeleton [S30]
Map / sort / filters [S31][S33][S32]
Tap hotel → Booking.com (Rome2Rio) ↗ [S26]
Hotel booked on partner

Flow D · Passengers

Opened from the passenger chip on Schedules.

Schedules [S10] → tap 👤1
Who is travelling? [S14]
Set Adult / Youth / Senior
Youth > 0?
Yes
Pick age for each [S15] Confirm disabled until done
No
Confirm
Prices refreshed

Flow E · Operator info & Profile

Supporting paths.

Journey details [S20]
Operator card lines · price · frequency [S21]
Photos [S22] · Call [S23] · Website [S24]
Feedback 👍👎 [S11]
Profile tab [S34]
Currency · Distance units
All prices & distances re-displayed

Flow F · Behind the scenes: what happens on “Search”

A conceptual model for our own architecture. This is an assumption, not Rome2Rio's actual code.

Query: “Tokyo → Shinjuku”
Geocode both places + find nearby hubs
Transit timetables
Flights
Road network drive/taxi/rideshare
Walking paths
Build multimodal options; estimate time, distance, price
Rank & tag BEST / FASTEST / CHEAPEST
Attach hotels, operator links and ad slot
Render results [S06]
06

Information architecture (sitemap)

A floating bottom tab bar with three tabs.

  • App
    • ⌕ SearchExplore home [S01]
      • Where from? / Where to?[S03] [S04]
      • Explore countries → Country page[S02] → [S35]
      • Route results + map[S06] [S08] [S36]
        • Hotels carousel + ad[S07] → Hotels
        • Schedules[S09] [S10] [S16]
          • Date · Time · Sort · Filters[S17] [S18] [S19]
          • Who is travelling?[S14] [S15]
          • Operators + feedback[S11]
          • Journey details[S12] [S13] [S20]
            • Where to find tickets / operator[S21] [S22] → call [S23] / web ↗ [S24]
            • Staying in X? Find hotels→ Hotels
    • 🛏 Hotels[S25]
      • Edit search: place · dates · guests/rooms[S27] [S28] [S29]
      • Map · Sort · Filters[S31] [S33] [S32]
      • Hotel → Booking.com ↗[S26]
    • ☺ Profile[S34] currency · distance · FAQs · about · privacy · terms · feedback
07

UI patterns & visual style

What the recording shows about Rome2Rio's design language (colors are approximate, taken by eye).

Color

Backgroundnear-black
Cards / inputsdark grey
Primaryhot pink CTAs
Badgesgreen (BEST, % off)

Components

  • Floating pill tab bar (Search · Hotels · Profile)
  • Full-width pink primary buttons (Search, Find tickets, Confirm, Apply)
  • Tags: BESTFASTESTCHEAPEST
  • Bottom sheets / modals with ✕ (Filters, Who is travelling, Guests)
  • Dropdown chips (Departure ▾, 6:00 AM ▾, Filters)
  • Skeleton loaders + toast (“Getting the best options for you”)
  • Vertical timeline for journeys, with expandable stops
  • Horizontal carousels (hotels, destinations)
08

Business model

Searches are free. Revenue comes from what users do next.

🏨 Hotel affiliate

Hotels are woven into results, journey details and a whole tab, and open on a Rome2Rio co-branded Booking.com page [S26].

📣 Advertising

Sponsored placements inside results (a Google Gemini app-install card) [S07].

🎫 Ticket referrals

“Find tickets” sends users to operators and booking partners. Omio, the parent company since 2019, supplies rail and bus inventory.

09

Takeaways for our new project

✅ Patterns to borrow

  • One From → To box as the whole home screen
  • Origin-aware suggestions with travel time (“Shibuya · 5 min by subway”)
  • BEST / FASTEST / CHEAPEST labels make comparison instant
  • Price shown as a range before the details
  • Clear depth: Results → Schedules → Journey details
  • Contextual cross-sell (“Staying in Shinjuku? Find hotels”)
  • Skeleton loaders with a friendly message

💡 Gaps / opportunities

  • Booking leaves the app (browser), so the experience breaks; aim for native checkout or an in-app sheet
  • No saved trips, ticket wallet or account in Profile
  • Ads inside results can lower trust
  • No live delay/disruption alerts
  • No multi-city itinerary (A → B → C)
  • Missing accessibility and preference filters (step-free, luggage)

📋 MVP screen list

Home/Search → Place search → Results + map → Schedules (sort/filter) → Journey details → Tickets handoff → Hotels list → Settings. That's 8 screens covering Flows A and C.

10

Sources