Not sure what’s happening internally at Retool, but I’ve noticed a severe degradation over the past year. There are fundamental functionalities that drive me b.a.n.a.n.a.s. I keep hoping that these bugs get fixed, but they never do, and new ones get added.
Are you dogfooding your own product? Please feel the pain with us.
Right now, it feels like death by a thousand paper cuts.
Let me give you some examples:
Linting is so unreliable. I have form inputs that don’t update in my query previews without a full refresh. I try to clean up all errors to keep our apps clean but its nearly impossible with phantom linting errors.
Impossible loading validation: most my tables populating from simple GET requests are showing linting errors as well (Cannot read properties of null (reading 'id")). I spent 4 hours debugging this yesterday and am simply giving up and going to live with two of these errors every time the page loads.
Paint Performance: I’m building a multi-page app right now, and first paint of a basic table page with a couple buttons takes over 1s (pre data fetching).
Multiplayer saving funkiness: A team member and I were validating an endpoint in a retool app, and it took us almost 30 minutes of back and forth to realize that when he saved a query, it didn’t save for me, and vice versa. Lots of funky multiplayer things in general.
Dumb automatic query runs: the automatic query run logic is incomplete, so I have to set up manual triggers for all queries, which adds tons of extra complexity (queries triggering queries). New team members learning retool always get confused. For example, having server-side pagination set up will double-trigger a query.
Shouldn’t I have reported each of these as a bug report? I would love to, but I simply don’t have time. I barely have time to maintain my apps and workflows, nonetheless write up thorough walkthroughs of bugs.
I love retool, it’s allowed me to solve SO many problems for my team and helped us scale as a company. Maintaining product quality is hard, maybe one of the most challenging problems any successful company faces. I’m begging you to focus on the fundamentals and use your own product. I don’t need flashy AI Agents; I just need the basics to work flawlessly, and I’ll happily give you my money.
This query has no variables and yet it’s failing because of scope?
This has been working for days on this branch and then I add a new page and now this other page that was working is now not working and i’m completely stuck.
I’m also facing these issues since a while. Think since this summer, but we’re running selfhosted so we might be a bit behind.
The query errors don’t seem to make sense and many of them I can’t resolve, although they are really simple calls. I’m ignoring them now, but they do bother me.
The paint performance is indeed an issue for us, I’ve already contacted support for this. I’m especially noticing this with Chrome/Edge on Windows. Safari/MacOS is working fine.
Thanks for sharing this feedback, Jonni. I hear you on these concerns. We have plans to address some of these.
Multiplayer saving funkiness: This has been a pain point we heard about. We’ve had a team working on improving this with a plan to roll out early next year. We’ve been testing our progress regularly by having the whole team hammer on a single app together. We’ll share when this is rolled out!
Performance: We’re working to reduce the time it takes for a user to run their first query through different improvements. We’re also working on revamping our layout engine. While the focus there is around reducing laggy interactions, we hope it will have an impact on rendering. This is a problem we’re committed to chipping away it because we hear it from customers and see it ourselves.
On the screenshot you shared, we have noticed that linting has introduced some confusion and frustration with how page vs. global scope is handled. I ran into this myself this week editing one of our heavily-used internal apps when switching between pages changes scope and introduces or removes new linting errors. We know there’s room for improvement here, and we plan to tackle this in the new year. Consider the screenshot you shared the bug report.
If you’re willing to share more context on the other cases, I’d be happy to file bug reports and discuss with the team. I recognize how frustrating this feels for you and other customers and want do what I can to make it better.
Honored to be the recipient on your first post, Seth, and glad to see you taking it seriously!
One thing that blocks me from reporting bugs to the forum is not exposing internal apps/data. I tried to find non-sensitive ways to share but that adds a “tax” to every report (sometimes requiring building a demo app).
Could I record a brain dump loom and send directly to you?
Im so glad to hear all the above is being worked on! Specifically load performance and linting. I love retool, but id be remiss if it didnt make me want to remove all the hair from my head one at a time sometimes
I couldnt agree more with the statement of !!!“I don’t need flashy AI Agents; I just need the basics to work flawlessly, and I’ll happily give you my money.”!!!
Thanks again for sharing this feedback, @jonnilundy! I might be able to alleviate some of the pain points that you've described here, even if they're just bandaid fixes.
Impossible loading validation
Use optional chaining whenever you're accessing query results - queryname.data?.id, for example.
Query Library scope
This is a known issue and the recommended workaround is to simply rename the conflicting parameter in the Query Library query.
This kind of concern was brought up six months ago.
We were assured we didn’t need to worry, but I’m still not convinced.
A simple example from my point of view - the “Timeline” component was something we could use a lot, but the initial version was very simplistic and clearly needed development to add enough features to make it really useful. But I checked yesterday and it’s still the same with no apparent progress.
Just like six months ago, all I see in notifications from Retool relates to AI and Agents., nothing about improvements or additions to the basics - database handling, code, form components and App design.
Hey @davblo - that's the first topic that I thought of when seeing @jonnilundy's feedback, as well. Most of the big flashy announcements from last year certainly were focused on AI integrations, but that doesn't mean that the core platform didn't also see a number of improvements. Not all of those changes affected the average builder, though; many were focused on permissions and source control.
Based on what you and others have said, though, it's clear that some parts of the app building experience need to be addressed. Seth and I have talked a bit about how to best maintain and iterate upon our existing components, for example. I recognize that your anecdote is just one example, but what kind of functionality would you like to see in the Timeline component?
Plus manual queries still run randomly. even when i have a promopt first before run option, i check logs and i see it ran with error…
Having the resources tab in the editor now slows down my browser for some reason on big projects. it used to be all good. you need to let people lock their retool versions. our organisation needs to be able rely on this or we will have to look for another solution long term.
I also want to add feedback specifically around Retool’s AI products. In short, Retool still struggles to effectively solve its own problems.
First, the mobile application has ongoing issues, but more importantly, Retool is not meaningfully simplifying user interactions compared to real competitors in the market (e.g., Cursor, Claude Code). There is still significant friction in common workflows. For example, creating a custom component that performs a specific function remains cumbersome. In contrast, tools like Framer have introduced natural-language–driven features that allow users to generate and launch custom components directly, similar in spirit to Retool themes but far more flexible and seamlessly integrated into applications.
Second, AI agents almost always require email integration in real-world use cases, yet Retool lacks native Gmail and Outlook integrations. The autogenerated email addresses used to trigger agents are excessively long and impractical. It is unrealistic to expect an external user, such as a customer submitting a sales order, to remember or correctly use these addresses.
Third, the AI Builder itself is still not production-ready when compared to tools like Cursor or Claude Code. It takes too long to reason, frequently deletes components, breaks layouts, or simply fails to execute correctly. This creates more rework than acceleration.
Finally, working with storage, documents, and images remains unnecessarily difficult. Retool is predominantly used for business applications that depend heavily on documents and media, yet there is no robust, native way to read and interact with common file types. There should be first-class support for document viewing and ingestion across formats (for example, a universal document reader, not limited to PDFs). This is an area where platforms like Palantir are clearly ahead and set a strong benchmark.
I've been working on building a tool that allows you to speak directly to an agent I trained on how to set up a new custom component library, or add new/edit existing custom components within an existing library with an easy to use prompt interface.
It works well, but I'm still constructing CRUD for the ability to have saveable and selectable templates for simpler component generation. I can let you know once it's completed, as I'm planning to make it available for retool users once it's reached MVP.
We've been pretty stacked at our org recently in terms of work-related tasks (in which this is technically a personal project, and therefore it lives in my own personal retool instance), yet they have been coming to an expected slowdown as we settle into first quarter.
Once another opportune time comes around here in the next few weeks, I'll continue fleshing out a usable v1 for public use and will be sure to post an update in the Community Tips and Tricks category!