Developing Internal Tools with Retool
Retool is a platform for rapidly building internal tools: admin panels, operational dashboards, customer support tools. Instead of weeks developing a custom React app—build a functional interface in days.
Typical Use Cases
- Content moderation panel for support team
- Operations dashboard with order editing capability
- Manual user subscription management tool
- Form submission viewing and processing
Data Connections
Retool connects to PostgreSQL, MySQL, MongoDB, REST API, GraphQL, Stripe, Google Sheets.
-- PostgreSQL resource, users table query
SELECT
u.id, u.email, u.name, u.status,
u.created_at,
COUNT(o.id) as orders_count,
COALESCE(SUM(o.total), 0) as lifetime_value
FROM users u
LEFT JOIN orders o ON o.user_id = u.id
WHERE ({{ search.value }} = '' OR u.email ILIKE '%' || {{ search.value }} || '%')
AND ({{ statusFilter.value }} = 'all' OR u.status = {{ statusFilter.value }})
GROUP BY u.id
ORDER BY u.created_at DESC
LIMIT {{ pageSize.value }} OFFSET {{ (currentPage.value - 1) * pageSize.value }}
Example: Support Tool
- Users table with search and status filters
- "Block" button calls REST API
PATCH /users/{id}/block - Form for manual subscription changes with reason
- Log of operator actions (who changed what and when)
Everything assembled through drag-and-drop without frontend code. JavaScript needed only for data transformations and conditional logic.
Timeline
Basic tool with table, search, and several actions — 1–3 days. Complex multi-page tool with access roles — 1–2 weeks.







