AI App Builder Audits · AI Development Series
ToolJet gives you the internal tooling without the per-user bill. The engineering questions are the same ones as any tool with a key to production.
ToolJet is an open-source internal tool platform that has become popular with engineering teams, partly on capability and partly because its pricing does not charge for every end user. It is designed to be self-hosted.
Structurally this is the same proposition as Retool or UI Bakery: a well-made interface layer holding a privileged connection to a database you already own. Because the schema is yours and was designed deliberately, the data-modelling problems that dominate app-generator audits generally do not apply.
What matters instead is who the database thinks is asking, whether permissions block queries or only hide controls, and — because most ToolJet installations are self-hosted — how the instance itself is exposed and maintained.
These recur across internal tools built on production databases.
The platform holds a single set of database credentials, usually broad. Every query anyone runs arrives under that identity, so the database cannot restrict by person, team or region.
Your database audit log shows one account doing everything, which is a poor position if you ever need to reconstruct who did what.
What it costs you: no per-user enforcement or attribution at the database level.Groups control what applications and components a user gets. The question worth testing is whether a user in a restricted group can still trigger a query belonging to a component they cannot see.
Where the answer is yes, your permission model is describing the interface rather than governing the data.
What it costs you: users reaching queries their group was meant to exclude.Self-hosting is the main reason teams choose ToolJet, and updating it is nobody's explicit job. Instances drift months or years behind, and often end up reachable from the public internet so people can use them remotely.
An unpatched internal tool with production credentials, exposed to the internet, is among the more attractive things you could run.
What it costs you: a privileged, internet-facing, unpatched entry point to production.ToolJet is a capable, economical answer to internal tooling, and being open source and self-hostable means neither your data nor your costs are subject to somebody else's decisions. For engineering teams who want control, it is a sound choice.
The honest summary: ToolJet is a good tool and self-hosting is a legitimate choice, provided somebody owns the consequences. The tooling risks are the standard ones; the deployment risk is the one that only applies because you chose to run it yourself.
Only indirectly, and it is worth naming: cheaper per user tends to mean more users, and more users means a wider blast radius when permissions are not properly enforced. The saving is real and sensible. It just makes getting the permission model right more important rather than less.
Read access to the applications so we can see queries, JavaScript and group configuration, the database schema and the credentials the platform connects with, plus how the instance is deployed and who can reach it. We will not change anything.
No, and we would rather say so plainly than pretend otherwise. We build with Claude Code and Cursor, with senior developers designing the system, reviewing every change and testing it. What makes us useful here is not ToolJet expertise, it is that the thing being audited is SQL, a permission model, a production database and a deployment.
We audit what these tools produce, whichever one you used.
Tell us roughly what you built and how many people use it. If an audit is not the right thing for you, we will say so.
What the report covers:
We reply within one working day.