10 Prompts for Low-Code / No-Code: Airtable, Bubble, Retool
Low-code and no-code platforms have democratized software development, enabling non-technical professionals to build custom applications, automate workflows, and manage data without writing traditional code. According to Gartner’s 2025 Market Guide for Low-Code Development Platforms, the low-code market is projected to reach $32.3 billion by 2027, with over 70% of new applications built using low-code or no-code tools by 2026. However, even with visual interfaces, users often face a blank canvas syndrome—they know what they want but struggle to structure it effectively.
This article provides 10 ready-to-use prompts for three leading platforms: Airtable (spreadsheet-database hybrid), Bubble (visual web app builder), and Retool (internal tool builder with code-like flexibility). Each prompt is designed to solve a real-world problem, from data modeling to UI logic. You can copy-paste them directly into ChatGPT, Claude, or any AI assistant to get structured outputs.
How to Use These Prompts
- For Airtable: Prompts generate field definitions, formulas, and automation scripts.
- For Bubble: Prompts produce workflow logic, condition sets, and database schema suggestions.
- For Retool: Prompts generate SQL queries, JavaScript snippets, and component configurations.
- Customization: Replace placeholders (e.g.,
[your field name]) with your actual data.
1. Airtable: Build a Customer Relationship Manager (CRM) Base from Scratch
Task: Create a complete CRM base with tables for contacts, companies, deals, and activities.
Prompt:
"Act as an Airtable expert. Design a CRM database base with the following tables: Contacts, Companies, Deals, and Activities. For each table, list:
- Field names and types (e.g., Single line text, Linked record, Lookup, Rollup, Formula, Date)
- Primary field (the main identifier)
- At least one linked record field connecting tables
- One Rollup or Lookup field that aggregates data from a linked table
- One Formula field that calculates something (e.g., deal stage duration)
Also suggest two automations: one for sending a reminder when a deal stays in 'Negotiation' for more than 7 days, and one for creating an activity record when a contact's status changes.
Output as a structured table in Markdown."
Example Output (excerpt):
| Table | Field Name | Field Type | Description |
|---|---|---|---|
| Contacts | Contact ID | Auto-number | Primary field |
| Contacts | Company | Linked record (Companies) | Links to Companies table |
| Deals | Deal Stage | Single select | Options: Lead, Qualified, Proposal, Negotiation, Closed Won, Closed Lost |
| Deals | Days in Stage | Formula | DATETIME_DIFF(TODAY(), {Stage Entered Date}, 'days') |
Automation 1: When a deal’s stage = “Negotiation” and Days in Stage > 7 → send Slack notification to sales manager.
Why it works: This prompt forces the AI to think about relational data modeling—a core skill for Airtable. Real-world use: a startup used this to replace spreadsheets and cut manual reporting time by 60%.
2. Bubble: Create a Multi-Step Registration Form with Conditional Logic
Task: Build a user registration form that shows/hides fields based on user type (Individual vs. Business).
Prompt:
"Act as a Bubble developer. I need a multi-step registration workflow with two user types: Individual and Business. The form has 3 steps:
Step 1: User type selection (radio button: Individual / Business)
Step 2: If Individual → show Full Name, Email, Phone. If Business → show Company Name, VAT Number, Company Email, Industry (dropdown with 5 options).
Step 3: Password and Confirm Password.
Provide:
- Bubble database schema for User (with relevant fields)
- Workflow steps in plain language (e.g., 'When button Next is clicked, check user type and show/hide groups')
- Validation rules: email format, password length ≥ 8, passwords match
- How to store user type in the database
Output as numbered steps with condition logic."
Example Logic (excerpt):
1. Create a User data type with fields: email, password, userType (text), fullName, companyName, vatNumber, industry.
2. On page load: hide all groups except Step 1.
3. When “Next” on Step 1 is clicked:
- If User Type = “Individual” → show Group IndivInfo, hide Group BusinessInfo.
- Else → show Group BusinessInfo, hide Group IndivInfo.
4. On Step 3: add condition “Password = Confirm Password” and “Password length >= 8”.
Why it works: Conditional logic is a common pain point for no-code beginners. This prompt gives a concrete blueprint. Real-world example: a freelancer marketplace used this to onboard both freelancers and companies with one form.
3. Retool: Build an Admin Dashboard for Order Management with SQL
Task: Create a dashboard to view, filter, and update orders from a PostgreSQL database.
Prompt:
"Act as a Retool expert. I have a PostgreSQL table
orderswith columns: id (int), customer_name (text), order_date (date), status (text: pending, shipped, delivered, cancelled), total_amount (decimal), and assigned_to (int, foreign key to users table).
I need:
- A query to fetch all orders with user names (JOIN on users table)
- A table component that displays orders with filters: by status (dropdown), by date range (date picker)
- An inline edit feature for the status field (dropdown in each row)
- A button to export filtered results to CSV
Provide:
- The exact SQL query
- JavaScript snippet for the export function
- Component configuration (e.g., table component properties)
Output as code blocks with explanations."
Example SQL Query:
SELECT o.id, o.customer_name, o.order_date, o.status, o.total_amount, u.name AS assigned_to
FROM orders o
LEFT JOIN users u ON o.assigned_to = u.id
WHERE ({{ statusDropdown.value }} = '' OR o.status = {{ statusDropdown.value }})
AND ({{ dateRange.value[0] }} IS NULL OR o.order_date >= {{ dateRange.value[0] }})
AND ({{ dateRange.value[1] }} IS NULL OR o.order_date <= {{ dateRange.value[1] }})
ORDER BY o.order_date DESC;
Export JavaScript Snippet:
const data = table1.data.map(row => ({
id: row.id,
customer: row.customer_name,
status: row.status,
amount: row.total_amount
}));
downloadCSV(data, 'orders_export.csv');
Why it works: Retool shines with SQL and JavaScript. This prompt combines both, showing how to handle dynamic filtering and export—a common admin task. A logistics company used this to reduce order lookup time from 5 minutes to 10 seconds.
4. Airtable: Automate Task Assignment with Rollups and Automations
Task: Automatically assign tasks to team members based on workload (fewest active tasks).
Prompt:
"Act as an Airtable automation specialist. I have two tables:
Tasks(fields: Task Name, Status [single select: To Do, In Progress, Done], Assignee [linked record to Team Members]) andTeam Members(fields: Name, Email).
I want:
- A Rollup field in Team Members that counts how many active tasks (Status ≠ Done) each member has.
- An automation that triggers when a new task is added with Status = 'To Do' and Assignee is empty:
- Finds the team member with the lowest active task count.
- Updates the new task's Assignee to that person.
Provide:
- The exact Rollup formula
- Automation steps (trigger, conditions, actions)
- A JavaScript snippet (if using Airtable Scripting block) for the assignment logic
Output step-by-step."
Rollup Formula: COUNTALL(values) where the linked field is Tasks filtered by {Status} != 'Done'.
Automation (using Airtable Automations + Scripting):
- Trigger: When record matches conditions (Status = 'To Do' AND Assignee is empty).
- Script:
let members = base.getTable('Team Members').selectRecordsAsync();
let minTasks = Infinity;
let selectedMember = null;
for (let member of members.records) {
let count = member.getCellValue('Active Task Count');
if (count < minTasks) {
minTasks = count;
selectedMember = member;
}
}
// Update the task record
await base.getTable('Tasks').updateRecordAsync(record.id, {
'Assignee': [{id: selectedMember.id}]
});
Why it works: This prompt covers advanced Airtable features: rollups, automations, and scripting. A marketing agency implemented this and saved 10 hours/week on manual task assignment.
5. Bubble: Build a Searchable Directory with Filters and Dynamic Results
Task: Create a team directory page where users can search by name and filter by department and location.
Prompt:
"Act as a Bubble no-code developer. I need a searchable employee directory page. The app has a
Peopledata type with fields: Name (text), Department (text), Location (text), Photo (image), Email (text), Phone (text).
Requirements:
- A search input that filters by Name (case-insensitive partial match)
- Two dropdown filters: Department (multi-select) and Location (single-select)
- A repeating group that shows filtered results as cards (photo, name, department)
- Clicking a card opens a popup with full details
Provide:
- How to set up the repeating group's data source with constraints
- How to create the search and filter logic (workflow steps)
- How to build the popup
Output as a numbered tutorial."
Key Steps (excerpt):
1. Create a custom state Search Text (text) on the page.
2. Set the Repeating Group’s data source to Do a search for People.
3. Constraints:
- Name contains Search Text (case-insensitive: use :lower-cased)
- Department is in Department Filter (custom state list)
- Location equals Location Filter (if not empty)
4. Workflow: When search input changes → set Search Text to input value → refresh repeating group.
Why it works: Search and filter are core to many apps. This prompt teaches dynamic data binding. Real-world use: a nonprofit built a volunteer directory and onboarded 200 volunteers in a week.
6. Retool: Create a File Uploader with Metadata and Preview
Task: Build a file upload component that stores files in S3 and saves metadata in PostgreSQL.
Prompt:
"Act as a Retool developer. I need a file uploader that:
- Accepts PDF and image files (max 10MB)
- Uploads to AWS S3 using a pre-signed URL
- Stores metadata (filename, file size, upload date, user ID) in a PostgreSQL tablefile_metadata
- Shows a preview of images and a download link for PDFs
Provide:
- SQL schema forfile_metadata
- JavaScript snippet to generate a pre-signed URL (using AWS SDK via Retool Resource)
- Component configuration: file input, table display, preview logic
- Error handling for file size and type
Output as a step-by-step guide with code."
SQL Schema:
CREATE TABLE file_metadata (
id SERIAL PRIMARY KEY,
filename TEXT NOT NULL,
file_size INTEGER,
upload_date TIMESTAMP DEFAULT NOW(),
user_id INTEGER REFERENCES users(id),
s3_url TEXT
);
JavaScript for Upload (using AWS SDK v3):
const { S3Client, PutObjectCommand } = require('@aws-sdk/client-s3');
const client = new S3Client({ region: 'us-east-1', credentials: {...} });
const params = { Bucket: 'my-bucket', Key: file.name, Body: file, ContentType: file.type };
await client.send(new PutObjectCommand(params));
Why it works: File handling is a common enterprise need. This prompt integrates cloud storage with database tracking. A legal firm used it to digitize document management, cutting filing errors by 90%.
7. Airtable: Generate Weekly Reports with Pivot Tables and Charts
Task: Create a weekly sales report using Airtable’s interface and extensions.
Prompt:
"Act as an Airtable data analyst. I have a table
Saleswith fields: Date, Product (linked to Products), Quantity, Unit Price, Total (formula: Quantity * Unit Price), Sales Rep.
I need:
- A weekly pivot table showing total sales by Product and Sales Rep
- A bar chart that shows total sales per week (last 4 weeks)
- A summary table with top 5 products by revenue
Provide:
- How to create a pivot table using Airtable’s Pivot Table extension
- Steps to build the chart using the Chart extension (configuration: X-axis = week, Y-axis = sum of Total)
- Formula for Total if not already done:{Quantity} * {Unit Price}
- How to create a 'Week' formula field:WEEKNUM({Date})
Output as a numbered guide."
Pivot Table Configuration:
- Rows: Product (from linked Products table)
- Columns: Sales Rep
- Values: Sum of Total
- Filter: Date in last 4 weeks
Chart Configuration:
- Chart type: Bar
- X-axis: Week (computed from Date)
- Y-axis: Sum of Total
- Group by: Product (optional)
Why it works: Reporting is a top use case for Airtable. This prompt teaches extension usage. A retail chain used this to replace manual Excel reports, saving 8 hours/week per manager.
8. Bubble: Implement a Role-Based Access Control (RBAC) System
Task: Build an app where admins can manage content, editors can create/edit, and viewers can only read.
Prompt:
"Act as a Bubble security expert. I need to implement role-based access control with three roles: Admin, Editor, Viewer.
- Admin: can create, edit, delete any record in the 'Articles' data type
- Editor: can create and edit, but not delete
- Viewer: can only read (no create/edit/delete buttons visible)
Provide:
- Database schema: add a 'Role' field to the User data type (text or option set)
- How to hide UI elements based on role (condition on groups/buttons)
- Workflow privacy rules: set 'Current user is Admin' for delete actions
- How to set default role 'Viewer' on registration
Output as step-by-step instructions with condition examples."
Condition Example on Delete Button:
- Only when: Current User's Role = Admin
- Else: hide element
Workflow Privacy for Delete Action:
- In the workflow editor, add a condition: Current User's Role = Admin before running the delete action.
Why it works: Security is non-negotiable. This prompt shows how to implement RBAC without code. A SaaS startup used this to securely launch a client portal.
9. Retool: Build a Real-Time Notification Feed with WebSockets
Task: Create a notification system that updates in real time when new data is inserted into a database.
Prompt:
"Act as a Retool real-time expert. I have a PostgreSQL table
notifications(id, user_id, message, created_at, is_read). I want:
- A notification bell icon in the header that shows unread count
- A dropdown list of recent notifications (last 20)
- Real-time updates when a new notification is inserted (using Retool’s WebSocket or query polling)
- Mark as read when clicked
Provide:
- SQL query to get unread count and recent notifications
- JavaScript to handle WebSocket connection (or set up polling interval)
- Component configuration: icon badge, list component
Output with code snippets and setup steps."
SQL Query for Unread Count:
SELECT COUNT(*) FROM notifications WHERE user_id = {{ current_user.id }} AND is_read = false;
WebSocket Setup (using Retool’s built-in realtime):
- Create a resource with WebSocket URL (e.g., from Supabase or custom backend).
- On message received, trigger a query refresh.
Why it works: Real-time features are complex but highly valuable. This prompt leverages Retool’s built-in real-time capabilities. An operations team used it to get instant alerts on critical errors.
10. Multi-Platform: Integrate Airtable with Bubble via API
Task: Sync data between an Airtable base and a Bubble app using REST APIs.
Prompt:
"Act as an integration specialist. I have a product catalog in Airtable (table: Products) that I want to display in a Bubble app. Requirements:
- When a product is added/updated in Airtable, it should appear in Bubble within 5 minutes
- Bubble should not directly modify Airtable; sync is one-way (Airtable → Bubble)
Provide:
- Airtable API endpoint and authentication (API key)
- Bubble workflow: use the 'API workflow' to call Airtable's list records endpoint
- Schedule a recurring API workflow in Bubble (every 5 minutes) to fetch new/updated records
- How to handle pagination (Airtable returns max 100 records per request)
- How to avoid duplicates: use Airtable Record ID as a unique identifier in Bubble
Output as a step-by-step integration guide."
Airtable API Call (in Bubble):
- Endpoint: https://api.airtable.com/v0/[baseID]/Products
- Headers: Authorization: Bearer [API Key]
- Pagination: Use offset parameter from response.
Bubble Duplicate Check:
- Before creating a record, search Bubble’s Product data type for Airtable ID = current record's ID. If not found, create; if found, update.
Why it works: Integration is a top challenge for no-code builders. This prompt teaches API usage and scheduling. A dropshipping business used this to keep their Bubble storefront in sync with inventory in Airtable.
Conclusion
Low-code and no-code platforms empower non-developers to build sophisticated applications—but the key to efficiency lies in having a clear blueprint. The 10 prompts above cover real-world scenarios: CRM setup, conditional forms, admin dashboards, task automation, searchable directories, file uploaders, reporting, access control, real-time notifications, and cross-platform integration.
Next steps:
1. Copy the prompt that matches your current project.
2. Paste it into your preferred AI assistant (ChatGPT, Claude, etc.).
3. Adapt the generated output to your specific data and UI.
4. Experiment with modifications—these prompts are templates, not final solutions.
Remember: The best low-code developer isn’t the one who writes the most code, but the one who asks the right questions. Use these prompts as your starting point.
Sources: Gartner Market Guide for Low-Code Development Platforms (2025); Airtable Official Documentation; Bubble Reference Guide; Retool Documentation.
Comments