I'm working on an app for Android, in which the user can buy tickets for public transportation in Germany.

I want to add a possibility to add tickets to favorites to give the user a way to buy a frequently bought ticket faster. But if you can imagine there are a lot of tickets in Germany and if one user uses public transportation in 3 or 4 cities even the favorites page could be overwhelming with one day tickets and week tickets for each region as well as tickets for the trip between this cities.

Now I want to ask, which of the following options you think is the best? Maybe you have a better solution or recommendation.

  • show all favorites in one page regardless the possible big amount of entries
  • add a search within the favorites page
  • add something like lists, which are customisable for the user. With this solution the user could add one list for each city/region.

EDIT: To make things sure. The app is like a ticket vending machine for the ticket itself in the first state. There is actually no way to search for a connection between for example Berlin Main Station and Berlin Alexanderplatz. The user must know which ticket he has to buy. This means there will be a shop with all one day tickets, week tickets and so on in germany (and yes, I know this will be a very long list ;)).

Other features like search for a connection and get the cheapest ticket recommended will be added later.

4 Answers 4


You should try to place yourself in a user's position.
If he's in one specific region right now, there's a high chance that he doesn't care about the other regions. So giving him the full list, even with a search, would be unnecessary, because he would just search for "Region XYZ" anyway.

What about taking your 3rd option but doing it automatically?
So a list that's already sorted by region.


download bmml source – Wireframes created with Balsamiq Mockups

Maybe you can even list ALL purchased tickets in these sublists. There shouldn't be too many different ones to cluster the screen and you would take away the task from the user of thinking which ticket is important enough and which one is not.

But adding a search would probably still be a good idea.

  • I did not think about the automatic selection of region by GPS. I love this idea! As mentioned in another comment before I prefered the solution with lists but now even more.
    – stJando
    Jan 13, 2017 at 10:54

add something like lists, which are customisable for the user. With this solution the user could add one list for each city/region.

So if we presume a user would buy a weekly ticket from Berlin Central to Berlin Stresow. This would be logged in favourites as Home > Favourites > Berlin > Berlin Central to Berlin Stresow - weekly.

The user buys a Return ticket to Berlin Central to Neubrandenburg and clicks favourite. This would be logged in favourites as Home > Favourites > Berlin > Berlin Central to Neubrandenburg - Return.

The user buys a return ticket from Neubrandenburg to Meckl and clicks favourite. This would be logged in favourites as Home > Favourites > Neubrandenburg > Neubrandenburg to Meckl - Return.

The Favourites now has two categories



Within those categories are the individual journeys.

I would presume the categories would be catagorised but the starting point rather than the start and finish points. So Berlin Central to Meckl would be entered into the Berlin favourites.

  • This could be a good solution. I also prefered the solution with lists, but I was not sure how to implement it exactly. I thought about lists like amazon uses for wishes or weddings.
    – stJando
    Jan 13, 2017 at 10:38

The best case solution would be to create a location and usability intelligent favorites page that might go as follows:

Create a counter for the number of times a user uses a particular type of ticket in a city and then user the counter as your priority meter for queuing the cards for that city.

For example, if a user is in Wolfsburg and has previously bought a one-way ticket to Dusseldorf four times, a weekly ticket to Berlin two times, and a season pass to Leipzig five times but the user still has one that hasn't expired yet, following is how you would queue them in the favorites list for Wolfsburg:

  1. Dusseldorf Ticket
  2. Berlin Ticket
  3. Leipzig Ticket (since this one hasn't expired yet, the user won't be buying a new one yet. Hence lower priority)

This would be followed by the list of tickets of other cities that the user has bought, with no accordance to the cities but to the count of the tickets the user has bought.

For example, after Wolfsburg list is over, say the user has bought 15 weekly tickets and two one-way tickets from Berlin, and 10 one-way tickets from Leipzig, the sequence would be as follows:

  1. Berlin weekly ticket
  2. Leipzig one-way ticket
  3. Berlin one-way ticket

This would prevent the user from having to make an additional click on the city tab before being able to access the ticketing list.


Just a suggestion, but perhaps a location based list might help?

the initial page might look like this:


download bmml source – Wireframes created with Balsamiq Mockups

If the user chose to by a One Way ticket, she will be presented to the next screen.


download bmml source

If the user wants to by a One Way, there is no need to show the other kinds of saved tickets.

Let's say the user lives in A and she travels frequently to and from B, C and D as well. When she is at A, she will se shortcuts for buying trips from A to B, C and D. When she is at C, she will se shortcuts for trips from C to A, B and D.

This might work if she does the same trips regularly. A person traveling "randomly" from and to many different places might not have the same need of thos shortcuts.

  • 1
    Thanks for the reply Ilias. In the current state there is no feature for finding a route. It's only a shop where you can buy a single, day or any other ticket. It's like a ticket vending machine. I will update the question to make this sure.
    – stJando
    Jan 13, 2017 at 10:34
  • Ok, I've updated the mockup. Jan 13, 2017 at 10:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.