What Is Retool?
Retool is a development platform for building internal business tools: dashboards, admin panels, CRMs, and workflow apps, all connected to your own databases and APIs. The new AI builder, currently in Beta and branded as AppGen, takes a plain-English description and generates a complete full-stack application from scratch.
It writes the database schema, seeds it with realistic demo data, writes the backend TypeScript functions, and builds a multi-page React frontend, all wired together and running on Retool’s built-in PostgreSQL database.
Who Is Retool For?
- Internal tools developers who want to skip backend scaffolding and go from a written requirement to a working, data-connected app in a single session, without touching a framework or deployment config from scratch.
- Operations and product teams that need a CRM, payment tracker, or maintenance dashboard but cannot wait for engineering to have bandwidth. Retool’s prompt-based builder gets them to a working version the same day.
- Technical founders building internal platforms as part of their product. Retool gives them production-ready output with full code access, so they are not locked into a black box.
- Developers who want a starting point, not a finished product. The code tab is open on every plan, so the generated app is as much a scaffold as it is a deliverable. Engineers who want to finish things their way will find the handoff clean.
Retool Pros and Cons
- Full-stack app generated from a single prompt
- Direct code access included on every plan
- Function approval gate prevents accidental data writes
- @ symbol connects data sources inside the prompt itself
- Three distinct editing modes to suit any workflow
- Output quality competes with purpose-built tools
- MCP building supported via Claude Code, Cursor, and others
- Complex builds take 15 to 20 minutes to complete
- Per-builder plus per-user pricing adds up fast for growing teams
- The new AI builder still carries a Beta label
Rating Breakdown
Retool’s new AI builder is still labeled Beta, but the output I saw from testing does not feel like an early experiment. Here is how it performs across the areas that matter most when evaluating an AI app builder for real work.
| Feature | Score (Out of 10) | Why the Score |
|---|---|---|
| Ease of Use | 9.0 | Sign-up takes under two minutes and the builder UI is clear, but the function approval system adds a learning curve the first time you publish |
| Features & Functionality | 9.8 | Full-stack generation, MCP support, three editing modes, data approval gates, and agents: very little is missing at this stage |
| Design & Customisation | 9.2 | Generated output is polished and ships with a working dark/light mode toggle; post-build visual editing exists but the experience is still chat-first |
| Value for Money | 8.8 | The free plan is genuinely useful; paid tiers charge per builder plus per internal user, which climbs steeply as team size grows |
| Performance & Reliability | 9.5 | An 18-minute build for a 9-table full-stack app with zero errors and a built-in approval flow that adds confidence without blocking progress |
| Overall | 9.4 | The new builder produces full-stack apps that are ready for real use, with strong safety controls, code access on all plans, and output quality that outperforms most alternatives at this price point |
Retool Features
- Natural-language prompt generates a full-stack app in one session
- @ symbol pulls external databases and services into the prompt mid-type
- MCP integration with Claude Code, Cursor, Codex, ChatGPT, and Kiro
- Human approval gate required before any data-writing function runs
- Chat, selection mode, and direct code editing for post-build refinement
- Built-in PostgreSQL database with staging and production environments
- One-click publish to a custom .retool.app subdomain
My Honest Retool Review: What I Found After Testing It
You Prompt Before You Even Sign Up
The first thing Retool does differently is it does not ask you to create an account before you start building. The homepage opens with a large prompt box front and center, and you type your idea directly into it before touching a sign-up form.
There are two things worth knowing about this prompt box before you use it:
Starter prompts. A “Starter prompts” button opens a dropdown with four ready-made use cases:
- Order management tool
- Vendor onboarding tracker
- Customer support queue
- Sales KPI dashboard

These are useful for exploring what the builder can produce. They are not templates you click through: you select one, and it populates the prompt box, which you can then edit before sending.
@ for data sources. Typing @ inside the prompt box opens a data source picker mid-sentence. The menu surfaces MySQL, PostgreSQL, Stripe, Slack, Snowflake, and more. This means you can write a prompt like “Create a vendor onboarding tracker that pulls vendor status from our @PostgreSQL database and flags incomplete submissions,” and the database connection is already named in your instruction before the build starts.

Build via MCP. Below the main prompt box, a “Build via MCP” button opens a modal (screenshot 3) that walks you through connecting Retool to Claude Code, Cursor, Codex, ChatGPT, or Kiro via a terminal command. For teams that prefer to build from their existing IDE, this is a fully documented path, not an afterthought.

I tested the builder with a detailed prompt: a property management platform for landlords and tenants covering user authentication, property listings, lease management, rent payments, maintenance requests, document uploads, messaging, notifications, an admin dashboard, reporting, Stripe integration, PostgreSQL database, REST API, responsive design, and deployment instructions. Nine feature areas, one input.

After I hit send, the homepage prompted me to sign up or log in to continue building.
The starter prompts and the @ data source picker inside the prompt box mean you understand the tool’s capabilities before you have even created an account. Other builders make you explore features; Retool makes you use them.
Sign-Up Is Fast, With One Setup Step Afterward
Retool offers two sign-up routes: Continue with Google or email plus password. Google takes roughly 20 seconds.

The next screen asks two things:
| Field | What It Does |
|---|---|
| Full name | Your display name inside the platform |
| Organisation name | Sets your subdomain, e.g. kimothokarani.retool.com |
Subdomain availability is checked live and confirmed with a green tick before you click Continue. There is no email verification step, no onboarding checklist, and no feature tour to dismiss. The builder opens immediately.

Retool’s sign-up page shows logos for Ramp, DoorDash, Stripe, Amazon, Snowflake, and OpenAI as existing customers.
That is context worth having before you evaluate whether the platform is serious about enterprise use cases.
Inside the Builder: What You Are Working With
Once the builder loads, the interface is split into two panels:
Left panel: Chat, Data, and Code tabs
- Chat is where you communicate with the builder during and after the build. Instructions, clarifications, and follow-up changes all happen here.
- Data shows your connected resources (Retool Database and Retool Storage by default) and the list of backend functions the builder has generated, including which ones require approval before they can run.
- Code opens the full project file tree: backend TypeScript functions organised by feature area, and frontend React TSX components organised into pages, components, hooks, and lib folders.

Right panel: Preview
This is the live preview of whatever the builder is currently generating. While the build is in progress, this panel shows a gradient loading state.
Once the build completes, it renders the full navigable app. You can switch between Preview and individual code files using tabs along the top.
A “Publish” button sits in the top-right corner and stays visible throughout the session, so you know going live is always one step away.
The Build Itself: 18 Minutes, 35 Changes, One Prompt
The build started at 7:55 pm. Here is what happened, in the order it happened:
Step 1: Reasoning. The builder did not start writing code immediately. It first displayed “Reasoning through the options…” and spent roughly 9 seconds analyzing the prompt before producing a structured plan. The sidebar showed a summary of what it intended to build across all feature areas: Payments, Maintenance, Documents, Messages, Notifications, Tenants and Users, and Reports. Each had a brief description of what it would include.

Step 2: Database tables. The builder presented a block of SQL labelled “Create all database tables” with a description: “Creates all 9 tables needed for the property management platform: users, properties, units, leases, payments, maintenance requests, documents, messages, and notifications.” The full CREATE TABLE code was visible in the panel. Two buttons appeared: Deny and Run. I clicked Run.

Step 3: Seed data, first pass. Next came “Seed demo users, properties, and units”: INSERT statements for demo landlords, tenants, and properties with realistic names, emails, roles, and phone numbers. Deny or Run. I clicked Run.

Step 4: Seed data, second pass. Then “Seed leases, payments, maintenance, messages, notifications”: INSERT statements for leases with real date ranges and rent amounts, payment records, maintenance requests with priority levels, message threads, and notification entries. Deny or Run. I clicked Run.

Step 5: Backend functions. The builder moved to “Now let me build all backend functions” and started editing code files without requiring my input. It generated functions like getStats.ts, one file at a time, streaming each to the Code tab as it completed.

Step 6: Frontend pages. A long list of file edits followed: Dashboard.tsx, Properties.tsx, Leases.tsx, Payments.tsx, and more. The builder also cleaned up unused imports and fixed TypeScript errors automatically as it worked through the files.

Step 7: Testing and README. The builder ran its own tests against the database functions it had just written, confirmed they returned data, fixed a duplicate useEffect in Leases.tsx, resolved dependencies, and wrote a README covering Stripe integration steps, database indexes, scaling recommendations, and REST API mapping.
Build completed at 8:13 pm. 18 minutes. 35 changes across the codebase. The summary on the left panel listed exactly what was built across every feature area.
The Output: What 18 Minutes Actually Produces
This is where Retool separates itself from most AI builders I have tested.
The finished app was named “PropManage” and had a fully branded sidebar with a logo, the logged-in user’s name and role (Sarah Johnson, Landlord), and ten navigation items: Dashboard, Properties, Leases, Payments, Maintenance, Documents, Messages, Notifications, Tenants and Users, and Reports. Settings and Sign Out sat at the bottom.

Dashboard: The top row showed live alert banners: “2 overdue payments totalling $3,800” in amber, and “1 urgent maintenance request need attention” in red. Below that, eight KPI cards:
| KPI | Value |
|---|---|
| Total Properties | 3 active |
| Occupancy Rate | 67% (6 of 9 units) |
| Rent Collected | $20,600 this period |
| Overdue Payments | $3,800 (flagged in orange) |
| Active Leases | 5 expiring soon |
| Open Maintenance | 3 (1 in progress) |
| Tenants | 4 across 2 landlords |
| Unread Messages | 3 awaiting response |
Below the KPI cards: a Revenue Overview chart (Collected vs Pending) and a Unit Status bar chart showing occupied versus vacant units. Below those: a Recent Payments list and a Recent Maintenance list, with entries colour-coded by status (Urgent red, High orange, Medium yellow, Resolved grey).

Properties page: Three property cards showing Oak Street Complex, Sunset Apartments, and Downtown Lofts. Each card displayed:
- Unit count and occupancy percentage
- Monthly revenue figure
- Occupancy progress bar
- Property type and owner
- Edit and View buttons
Messages page: A split-pane inbox with Inbox/Sent tabs, an unread count badge (3), sender role labels (Tenant), message previews, timestamps, and a Compose button.
Payments page: Three summary cards at the top (Collected $20,600, Pending $13,000, Overdue $3,800), a “Stripe Integration Ready” banner with a Connect Stripe button, a searchable and filterable payment table with 14 results, and individual “Mark Paid” actions per row.
The app also included a light/dark mode toggle in the top-right corner of the preview (screenshot 1, second batch). Dark mode was the default. Switching to light mode updated the entire app instantly.

Every one of these pages came from a single prompt. The depth of what was built, including the color-coded maintenance priorities, the split-pane message reader, the Stripe integration banner, and the revenue vs pending chart, is not what you would expect from a first-pass AI generation.
Three Ways to Edit After the Build
Once the build completes, Retool gives you three distinct ways to make changes. All three are available on the free plan.
1. Chat The left panel’s Chat tab stays active post-build. You continue typing instructions: “Add a city filter to the Properties page” or “Change the overdue payment card to show yellow instead of red.” The builder edits the relevant file and shows you what changed. This is the route for non-technical users and for changes that are easier to describe than to locate in code.
2. Selection mode. Clicking the selection mode icon in the top-right corner of the preview switches the app into an interactive editing layer.

You click any component on screen and a floating tooltip appears, showing the component name and its linked source file.
An “Ask for changes” field lets you type a targeted instruction without leaving the preview. In my test, clicking the Payments page header opened a bubble linked to Payments.tsx. This is faster than describing which element you mean in a chat message.

3. Direct code editing. The Code tab shows the full project file tree. Backend functions in TypeScript, frontend components as .tsx files, all organized and readable. For example, you can open getPayments.ts and read or edit the SQL query directly.

The code is clean, well-structured, and does not require you to understand Retool’s internal architecture to work with it.
The table below summarises which editing mode suits which type of user:
| Editing Mode | Best For | Requires Code Knowledge |
|---|---|---|
| Chat | Non-technical users; broad changes | No |
| Selection mode | Targeted UI changes; faster than chat | No |
| Direct code editing | Precise logic changes; custom queries | Yes |
Ops managers and non-technical users can stay in chat. Selection mode covers the gap in between: you know what you want to change, you can see it on screen, you just do not know which file it lives in.
Most AI builders force everyone into one lane. Retool does not, and that matters when the person building is not always the person refining.
The Function Approval System: A Safety Gate That Makes Sense
Under the Data tab, there is a toggle: “Require approval to run functions that may modify data.” It is on by default.
Every function that writes, updates, or deletes data sits in a “Needs review” queue before it can execute. In my build, that included:
- markAllRead
- markRead
- recordPayment
- saveLease
- saveProperty
- saveRequest
- saveUser
- sendMessage
- uploadDocument

Each one shows a banner at the top of its detail view: “This function requires review. Ensure it performs the right operations on the right data before approving.” You read the TypeScript, confirm the SQL is doing what you expect, and click Approve.
This matters for publishing. When I first hit Publish (screenshot 8, second batch), the publish checklist flagged a blocking issue: “There are functions that are not yet approved. You cannot publish functions that change external data without approving them first.” A “Review functions” button linked directly to the Data tab.

After approving each function, the publish flow continued cleanly. I set the app URL (kimothokarani–properties.retool.app), chose a folder, tagged the release, and hit Publish.
If you are using Retool to manage real business data (payments, leases, user records), you do not want an AI writing database functions that run without your sign-off. Most builder tools do not give you this gate. The fact that Retool ships it on by default says something meaningful about how the platform thinks about what “done” means.
Publishing: Nearly One Click, With One Gate to Clear
The publish flow is straightforward once function approvals are in place:
- Click “Publish” in the top-right corner
- Set your app URL (format: [org]–[appname].retool.app)
- Choose a folder (defaults to Published)
- Tag the release: no tag or Major release (1.0.0)
- Click Publish

The resulting URL is a clean, shareable .retool.app address. No separate hosting is required on the free plan. You can share the link immediately after publishing, and the app is live for anyone with access.
Retool Pricing and Plans
Retool uses a subscription model with an AI credit layer on top. There are two user types across all plans:
- Builders: Users who create or edit apps in a billing cycle
- Internal users: Users who only use apps without making edits
Key things to know before you commit:
- There is no published money-back guarantee.
- Payment is by credit card only.
- Annual billing saves 20% across all paid plans.
- AI credits cover app building and AI Actions. They renew monthly and do not roll over.
- Agents are billed separately by the hour and do not draw from the AI credit pool.
- Enterprise customers can connect their own model provider API key. When active, AI calls route through their own key and Retool credits are not consumed.
- The Business plan is required for anything client-facing: portals, embedded apps, and custom branding are locked behind it.
- Bonus credits are included at Team and above (750 base plus 250 bonus on Team; 1,500 base plus 1,500 bonus on Business). Additional credit packs can be purchased on any paid plan.
Which plan suits which user:
Solo developers and small teams doing initial builds can stay on the free plan comfortably. Teams iterating frequently will hit the credit limit and need the Team tier. Any team building client-facing or embedded apps needs the Business plan. Teams with compliance requirements, SSO needs, or more than a handful of builders should speak to sales about Enterprise.
Alternatives to Retool
The most direct competitor to Retool’s new AI builder for enterprise internal tools is Superblocks. Where Retool generates a full-stack app inside its own platform and keeps the code there, Superblocks generates apps as exportable React code that you can modify in your own IDE and deploy outside the platform entirely.
For teams that are serious about avoiding vendor lock-in, that distinction matters.
Superblocks also offers a hybrid security model: its agent runs inside your VPC while the builder interface is managed in Superblocks’ cloud, which makes it the stronger choice for organizations with strict data residency requirements. Retool does offer self-hosting, but it requires significantly more infrastructure overhead than Superblocks’ on-premise agent approach.
The trade-off is price. Superblocks is enterprise-only ($200 per AI builder per month, plus $100 per hosted app per month), which makes Retool’s free plan and Team tier dramatically more accessible for smaller teams.
| Feature | Retool | Superblocks |
|---|---|---|
| Ease of Use | Free plan, prompt-first homepage, fast sign-up | Enterprise-focused; higher barrier to get started |
| Best For | Internal tools teams of any size, developer-led | Enterprise teams with VPC and compliance requirements |
| Backend and Data | Built-in PostgreSQL; 100+ integrations via @ syntax | Full-stack generation; exports clean standalone React code |
| Design Flexibility | Chat, selection mode, and full code editing in platform | Drag-and-drop, AI generation, and native IDE editing with two-way sync |
| Pricing Model | Free tier available; Team from $10/builder per month | Enterprise-only; contact sales |
Final Verdict: Is Retool Worth It?
Retool’s new AI builder is the most capable prompt-to-app platform I’ve tested for internal tools. In just 18 minutes, it generated a multi-page property management platform complete with seeded data, business logic, dashboards, and navigation.
What impressed me most was the quality of the output. The app felt usable from day one rather than a rough prototype, and features like function approvals and full code access show Retool is focused on real production workflows.
That said, it isn’t ideal for everyone. Non-technical users may struggle with the publishing process, and per-seat pricing can become expensive as teams grow. The builder is also still in beta, so some rough edges remain.
For developers, startups, and operations teams building internal software, Retool currently delivers the strongest prompt-to-production experience available. If speed, flexibility, and production readiness matter, it’s one of the best AI app builders you can use today.

