In the recent Caldera Update post, I gave a quick overview of what's planned in the next update: focusing on search, discovery, and list/game management UX.
In this post, I want to discuss the roadmap in a bit more detail but before I do that, I want to actually show you the roadmap!
The Public Roadmap is now available if you want to take a look and see what's being worked on.
The Public Roadmap is directly tied to UserVoice ideas you've voted on. That's what those user icons mean -- those are the cumulative votes tied to that feature from linked ideas. There can be multiple ideas linked a single Roadmap Feature, depending on how I think they will be best implemented. In that case, the board will sum the total votes together.
In the past, I haven't used this feature of UserVoice much because I have my own internal roadmaps and issue tracking. The old "Roadmap" link in the nav just filtered your ideas by "Planned" but they were not in any priority order.
However, as more of you become patrons and support the development of the app more directly, I realize it may be helpful to be more transparent with what the direction is for the app -- and how exactly your feedback helps shape the roadmap.
Funnels are kind of a thing in product development and KTOMG is no different. There is a funnel that is specific to tracking games and this is the way I visualize the work being done.
At the top of the funnel you have "game acquisition" which might be triggered by hearing from a friend, a review, a trailer, a recommendation, aka some kind of "discovery" event. To add it, you need to search and find it.
Once in your library, you manage and organize it (setting ownership, status, tags, etc.). At some point, you prioritize (or de-prioritize) playing it.
When you prioritize and play a game, you enter the middle of the funnel. You're tracking its status, playtime, progress, etc. and generally interacting more frequently with the game.
Once you're "done" (however you define it), you proceed to the bottom of the funnel where you decide how you felt about it, share that with others, etc.
This is the lens through which I view work and prioritize. If an update focuses on one aspect of the tunnel, I usually want to switch focus in the next update so that over time, I try to improve the whole funnel and not just one specific part of it.
If you don't take the time to focus efforts on other parts of the funnel, especially the top, you end up with a product coffin.
Why Search and Discovery?
The Caldera Update focused on the middle of the funnel and expanded the capability of tracking game progress. It helped support the bottom of the funnel by adding support for completions as well. In the Suran Update, I will be shifting my focus to the top of the funnel.
The goal is to solve a bunch of pain points when discovering, adding, and managing games. As you can tell from the roadmap, many of the planned features relate to improving the search experience, adding ways to discover games, or browsing games.
These features tie directly to some of the most top-voted ideas on the board:
Browse all games: KTOMG does not even have a way to view a generic list of games from the database, so you cannot view games by publisher/developer/platform/release year, etc.
Search sucks: Problems include no partial name matching, ignoring numbers (e.g. Resident Evil 8), no UX for versions/editions, lack of alternative localized names, and no support for accent characters like in Pokémon. Basically, search doesn't return results you'd expect. When they do return, you can't filter by release year or any other facet like platform or genre.
Explore is not useful: The Explore page is really simple right now and only exposes a few "lists" of games (they are not real lists). You cannot even click a "view more" button to see browse the full lists (see first point).
The fact is that if you cannot find a game, you cannot add it to your collection. Which makes these UX issues pretty important.
Downstream Features Impacted by S&D
You might squint and notice that there are other features on the Roadmap though that don't relate to Search and Discovery. What gives?
In the funnel visual, you can see I've drawn some dotted lines for "supporting" work. Typically, upstream feature work impacts downstream features. A good example is how completions can't really exist without playthroughs.
That's why the other focus in the Suran Update is management UX. The reason I've included it in the scope of the roadmap is because I have a hunch that to implement the changes to search, it will impact the navigation and management UX of the app (which involves several pages and the overall "app shell").
For example, there are two search inputs when viewing a list. Based on product analytics, I can see this confuses people. My plan is to create a single way to search that seamlessly crosses the boundaries of list/global search, ideally using the context of the page you're on as a hint of what to prioritize. In some apps I've worked on in my job, we've called this capability "Omni-search."
When I group work for an update, I do it on the basis of what I think can be "batched" together. Related things often need to be updated together, otherwise things becomes inconsistent.
Speaking of inconsistency, the Caldera Update originally had the scope of integrating How Long to Beat/Time to Beat timings and status workflows with the rest of the app. Right now, playthroughs and completions are mostly separate from your lists. They show up as buttons/labels on your game cards but that's about it. There are no aggregate stats, no tie-ins to status lists, and no timings shown throughout the app.
Part of the Search and Discovery work includes displaying, filtering, and searching by HLTB timings. Now that playthrough/completions have been shipped, that means I can actually use the data throughout the app. To be clear, this is scoped to KTOMG data only, it does not include actual ingestion of HLTB data -- that is a separate thing that I hope to do in the future. Both IGDB and KTOMG now have "time to beat" data and I've designed completions to align with that data architecture so I can show both kinds of timings as well as original HLTB timings in the future. Since I just came off working on playthroughs, I've marked this work as In Progress since it's easy for me to keep the context and continue integrating it. Once it's done, "Playtime/Time to Beat" can be added as a search facet.
A Peek Into the Internal Roadmap
The public-facing roadmap shows you the overall direction the product is headed. But there is also an internal roadmap with work that has to happen in different areas: engineering, product, growth, and business strategy. Each one impacts priorities and feasibility of actual user-facing features so I represent this as a single item on the Public Roadmap, "Core Infra Upgrades." Honestly, it's an item that probably will never move to "Recently Shipped" because keeping the lights on is an ongoing effort.
Adopting a New Payment Vendor
It has now been 3 years since the pricing and billing system has been available and it's proven to be really valuable. The feedback I get directly from you during checkpoints is gold. That said, the checkpoints themselves introduce a ton of friction and you've told me time and time again, "I don't get this pricing model."
At the same time, now that KTOMG earns revenue, it is subject to sales tax. Now is a great time to revisit the pricing model and billing system because I need to change payment vendors and adopt something called a Merchant of Record. This will also cut some overhead and reduce the cost of the billing system overall which is really nice.
This will benefit you in a lot of ways, from offering more ways to pay, opting in to recurring charges, and reducing the need for checkpoint emails.
Fixing Onboarding and Simplifying Powerups
Another priority is fixing the onboarding UX. A couple years ago I added product analytics. Watching and learning how new users sign up and use the app, I realized that there was a lot of friction. People sign up but then start with an empty list and aren't sure where to go from there. Some make their way to the Powerups and import games. Others get confused and give up.
In order to address this, a BUNCH of things need to change:
Powerups need to be refined
Registration needs a revamp
A more directed onboarding experience is needed
For example, switching to an email-based signup will consolidate email validation to a single step and remove the need to separately "activate" Powerups. When that happens, the language around Powerups gets simpler because they will only represent paid or "premium" features like background importing. Xbox/GOG/Steam/etc. just become connected accounts.
During onboarding, a more directed experience can ask for things upfront that will make it easier to get people's games imported immediately before they even enter the main app experience.
Basically, streamlining onboarding allows more users to reach the game tracking funnel. If they cannot even enter the funnel because they are stuck or can't add games, there's no hope they'll ever reach the bottom.
In 2024 and 2025, I migrated a lot of legacy infrastructure. As a 15 year old app, it was inevitable that some plumbing needed to be replaced. My dishwasher broke a few months ago and I just had it replaced. This kind of work is boring and tedious but necessary.
Examples of planned work include:
Moving over fully to Linux
Migrating the login system
Ultimately this work helps me move faster and release more reliably, while staying secure and up-to-date. It will also make the app faster for you, which is always a good thing.
My expectation is that all of this internal work will improve growth metrics, reduce friction, improve reliability, and ultimately lead to more paying members of the app.
You may look at the idea board and see the top 3 voted ideas right now are adding ratings/reviews, a native app, and more integrations. So why not do those first?
The public roadmap reflects a combination of your demands and my priorities.
You aren't seeing the full picture
If you look into one window of your house or apartment, do you expect to see everything? Nope. You can only see so much from the outside looking in.
It's the same here: UserVoice only captures feedback and votes from people who vote. Many don't. The total vote counts do not reflect feedback coming from other channels like support tickets, checkpoint feedback, product analytics, social listening, or my "gut" feelings on what might be useful. Some things I keep close to the chest because I think it might be important to the business or it's not ready to get feedback on yet.
This is why some roadmap items have 0 vote totals. Nobody wants me to upgrade the database but if they want a better/faster/smarter search experience, I need to do it. This is also why some items might be prioritized before others, as I have more context and information that informs the internal status of something.
Let me share some of that extra context.
Ratings and reviews is a great idea and it is planned but new regulations around the world, including the US and UK, are getting stricter about "social media" sites and that includes "user-generated content" (UGC) which would be... (drum roll please) reviews!
That's relatively new but the historical reason has been pretty simple: public reviews require moderation, content filtering, and admin tools. Big sites usually have an entire team for that. KTOMG is not at the scale yet where content moderation is feasible which is why other deeply social features are still on the back burner. Could AI theoretically help there? Maybe but then I'd be integrating AI features into the app and so far I've managed to avoid needing to do that. Plus, somebody's gotta manage the moderation bots and that would be yours truly.
On the other hand, private ratings are much more doable. But where in the UI/workflow do I add that? The bottom of the funnel!
Remember: upstream features impact downstream features. By adding playthrough tracking first, it made it MUCH more natural to support private ratings at the time you log a completion. But like I said, having spent so much time on the middle of the funnel, some time needs to be spent elsewhere. The good news is that the foundation has been laid that I can now build on.
I would love this as an end-user. I'm often updating playtime from the couch on my phone. But it would require a major rearchitecture of the app. It was just never designed for that.
Plus, think of what that might mean right now given what I laid out above. Do I want to release a native app right now with a bad search and onboarding UX? No. I'd be asking for poor reviews.
Also: the web app does not support offline mode, it requires a server to render anything, and it's a messy, old codebase. "Simply" wrapping it in a WebView and calling it a day is a recipe for disaster.
Instead, what if I waited until more core capabilities are added, fix issues at the top of the funnel, and then tackled a major rewrite to support native apps and improve the web app all at once? By then, KTOMG may have enough revenue to hire additional help. I'd expect that would be received much better. Believe it or not, the app shell and navigation UX updates being planned for the Suran Update is in support of a future native app.
I don't want to put the native cart before the horse. Sometimes prioritizing other features and fixes first allows for more flexibility in the future.
I'll admit adding more import integrations is doable today. But remember what I said above about fixing the onboarding UX.
My goal is to integrate importing into the onboarding flow. That will require some re-architecting of how Powerups work currently. Nothing too crazy but I'd rather do that work first and then add more integrations in a cleaner way later.
Plus, the decision to experiment with the Bulk Import Powerup was to see whether it may be possible to just let you bring your own games to KTOMG from anywhere, whether that's from another platform, a store, or your own spreadsheet. It works well but the UX is dicey and (again) is not integrated into the onboarding flow like I believe it should be. That's why that feature is not yet available for general availability. Once it is, I think it could solve a ton of integration issues in one fell swoop.
At the end of the day, "Why not X?" comes down to many factors that I have to consider. It is your job to tell me what you want and it is my job to separate signal from noise and figure out how to make KTOMG sing.
Since I'm inside the house, this is my attempt to pull back the curtains so you can see my living room. Pardon my mess.
Roadmaps are optimistic and reflect the hope you can get things done in an orderly fashion. In reality, product development is messier than that. That's why you won't see any dates on the board.
At the same time, roadmaps are useful when they show what direction the product is headed. Plus, when I'm asking you to support the app directly, it makes sense you want some insight into how the product will evolve and what to expect.
My disclaimer is simple: the roadmap is not a contract or a guarantee. It's my "best effort" for what you can expect. Things change and I will update the roadmap accordingly.
If you want even more insight and transparency, when you patronize the app you get access to some VIP Discord channels where I share more internal priority updates and progress as I work. I'm going to try bringing more visibility into the internal roadmap as well there. If you're not in the Discord, you'll also get a weekly email digest of what I've been working on.
I hope that helps shed some light onto how work gets done around here. You can find the roadmap linked in the app in the left sidebar menu:
Since you got this far, here's a GIF of a dog sliding down a hill: