Introduction
Low-code and no-code platforms have democratized software development, enabling non-technical teams to build apps, automate workflows, and manage data without writing thousands of lines of code. Yet many users still struggle with getting the most out of tools like Airtable, Bubble, and Retool. The secret? Crafting the right prompts — whether you're talking to an AI assistant, a colleague, or writing a specification for yourself. This article presents 12 practical prompts across three categories (Basic, Advanced, Expert) that will help you design better databases, build faster interfaces, and automate smarter processes. Each prompt includes a real-world scenario, the exact wording, and an example result you can adapt today.
Basic Prompts
1. Airtable: Creating a CRM Base from Scratch
Task: Design a simple CRM to track leads and deals.
Prompt: "Create an Airtable base for a small B2B sales team. Include tables for Companies, Contacts, and Deals. The Companies table should have fields: Company Name (single line text), Website (URL), Industry (single select with options: Technology, Healthcare, Finance, Other). Contacts table: First Name, Last Name, Email (email field), Phone (phone field), Linked Company (linked record to Companies). Deals table: Deal Name, Value (currency), Stage (single select: Prospecting, Negotiation, Closed Won, Closed Lost), Associated Company (linked record to Companies). Add a lookup field in Deals to show the Industry from the linked Company. Also create a rollup field in Deals to count the number of Contacts for the associated Company."
Example Result: The user creates a base with three tables and the requested fields. The linked record fields automatically create relationships. The lookup field pulls Industry into Deals, and the rollup field counts contacts. This base can be used immediately by sales reps to track their pipeline.
2. Bubble: Building a User Sign-Up Form
Task: Create a functional sign-up page with validation.
Prompt: "Build a sign-up page in Bubble. The page should have three inputs: Email (type: email), Password (type: password), and Confirm Password (type: password). Add a button labeled 'Create Account'. When the button is clicked, check that the Password and Confirm Password match. If they do, sign the user up using Bubble's built-in 'Sign the user up' action. If they don't match, show a validation error message below the button. Also require that the email is not already in use — if a user with that email already exists, show the message 'Email already registered'. Use Bubble's workflow editor for the logic."
Example Result: The developer creates a new page, adds input elements, and configures the workflow. The prompt includes specific conditions: password match check, duplicate email check, and error messages. The final app rejects invalid entries and creates a new user in Bubble's database only when all conditions are met.
3. Retool: Connecting to a PostgreSQL Database
Task: Set up a query to display customer data.
Prompt: "In Retool, create a new resource connected to a PostgreSQL database. Write a SQL query that selects all columns from a table named 'customers' where the 'status' column equals 'active'. Then, bind the query result to a Table component on a Retool page. Make the table sortable by the 'created_at' column. Also add a text input that filters the table by customer name in real time — use the 'where' clause with a LIKE operator and the input's value."
Example Result: The user adds a PostgreSQL resource, writes SELECT * FROM customers WHERE status = 'active', and drops a Table component on the canvas. They set the table's data source to the query. Then they add a Text Input and modify the query to SELECT * FROM customers WHERE status = 'active' AND name LIKE '%{{textinput1.value}}%'. The table updates instantly as the user types.
Advanced Prompts
4. Airtable: Automating Invoice Generation with Scripting Block
Task: Generate invoice numbers automatically when a new record is created.
Prompt: "Use Airtable's Scripting block to auto-generate invoice numbers. When a new record is added to the 'Invoices' table, the script should run and set the 'Invoice Number' field to a value like 'INV-2026-0001', where '0001' is the next sequential number. Use the last record's invoice number to calculate the next. The script should run on a button click or via an automation. Write the JavaScript code for the script block."
Example Result: The user opens the Scripting block and writes:
let table = base.getTable('Invoices');
let query = await table.selectRecordsAsync({fields: ['Invoice Number']});
let lastNumber = 0;
query.records.forEach(record => {
let invNum = record.getCellValue('Invoice Number');
if (invNum) {
let num = parseInt(invNum.split('-')[2]);
if (num > lastNumber) lastNumber = num;
}
});
let newNumber = lastNumber + 1;
let padded = String(newNumber).padStart(4, '0');
let newInvoiceNumber = 'INV-2026-' + padded;
// This script would be triggered by an automation or button
The script ensures unique, sequential invoice numbers.
5. Bubble: Multi-Step Form with Conditional Logic
Task: Build a complex form that changes based on user input.
Prompt: "Create a multi-step registration form in Bubble. Step 1: User selects account type (Individual or Business) from a dropdown. Step 2: If Individual, show fields for First Name, Last Name, Date of Birth. If Business, show Company Name, Tax ID, Industry. Step 3: Show a summary of all entered data and a Submit button. Use conditional groups to show/hide elements based on the dropdown value. Store the data in Bubble's database only after the Submit button is clicked. Also add back buttons to allow editing previous steps."
Example Result: The user creates three groups on the page, each representing a step. Group 2 has two sub-groups: one for Individual fields, one for Business fields. Each sub-group is conditionally visible based on the dropdown value. Navigation buttons control the current step index. The final submit action creates a record in the 'Users' table with all collected fields.
6. Retool: Building a Dashboard with Dynamic Charts
Task: Create a dashboard that visualizes sales data with filters.
Prompt: "In Retool, build a sales dashboard that shows total revenue, number of orders, and average order value. Use three separate SQL queries against a PostgreSQL database: one for total revenue (SUM of amount), one for order count (COUNT of id), and one for average (AVG of amount). Display these as stat components. Below, add a line chart showing revenue by month for the current year. Add a date range picker that filters all three stat queries and the chart. Bind the date range values to the SQL WHERE clauses using Retool's query parameters."
Example Result: The user creates queries like:
SELECT SUM(amount) FROM orders WHERE created_at >= {{dateRange.start}} AND created_at <= {{dateRange.end}}
They add a Date Range Picker component and set its value to a state variable. The queries use that state in the WHERE clause. The stat components display live numbers, and the chart updates as the date range changes.
7. Airtable: Creating a Content Calendar with Automated Status Updates
Task: Manage blog posts with deadlines and automatic status changes.
Prompt: "Set up an Airtable base for a content team. Create a table called 'Content' with fields: Title, Author (linked to a 'Staff' table), Due Date (date), Status (single select: Draft, In Review, Published). Use Airtable Automations: when a record's Due Date is today and Status is not 'Published', send an email notification to the author. Also, create a view that filters records where Due Date is within the next 7 days and Status is not 'Published'. Use a formula field to calculate days remaining: DATETIME_DIFF({Due Date}, TODAY(), 'days')."
Example Result: The user creates the Staff and Content tables, sets up the automation with a 'When a record matches conditions' trigger and 'Send email' action. The filtered view helps the team focus on upcoming deadlines. The formula field displays '3 days left' or 'Overdue' dynamically.
Expert Prompts
8. Airtable: Multi-Table Rollup with Script for Inventory Management
Task: Calculate total inventory value across multiple warehouses using a script.
Prompt: "You have three Airtable tables: Products (Product ID, Name, Price), Warehouses (Warehouse ID, Location), and Inventory (ID, Product (link), Warehouse (link), Quantity). Write a JavaScript script using Airtable's Scripting block that calculates the total value of all inventory across all warehouses. The script should loop through Inventory records, for each record fetch the linked Product's Price, multiply by Quantity, and sum the results. Output the total in a formatted message: 'Total inventory value: $XX,XXX.XX'."
Example Result: The script code:
let inventoryTable = base.getTable('Inventory');
let productTable = base.getTable('Products');
let inventoryQuery = await inventoryTable.selectRecordsAsync({fields: ['Product', 'Quantity']});
let productQuery = await productTable.selectRecordsAsync({fields: ['Price']});
let productPrices = {};
productQuery.records.forEach(rec => {
productPrices[rec.id] = rec.getCellValue('Price');
});
let total = 0;
inventoryQuery.records.forEach(rec => {
let productId = rec.getCellValue('Product')[0].id;
let qty = rec.getCellValue('Quantity') || 0;
let price = productPrices[productId] || 0;
total += qty * price;
});
console.log('Total inventory value: $' + total.toFixed(2));
This provides an accurate inventory valuation.
9. Bubble: Real-Time Collaborative Editor with WebSockets
Task: Build a collaborative note-taking app where multiple users can edit the same document.
Prompt: "In Bubble, create a page that allows real-time collaborative editing. Use Bubble's Realtime API (WebSockets). When a user edits a text area, push the content to a custom event named 'document_updated' with the new text. Subscribe to the same event on page load so that when another user makes a change, the text area updates automatically. Use a unique document ID stored in a custom state. Handle conflict resolution by always taking the latest timestamp. Also show a list of connected users."
Example Result: The user sets up a Realtime channel in Bubble's plugin settings. On page load, they subscribe to the event. The text area's 'Input' event triggers a 'Publish to channel' action. Another user's instance receives the update and sets the text area's value. The connected users list is updated via a custom state that tracks user IDs.
10. Retool: Custom Admin Panel with Role-Based Access
Task: Build an admin panel where different users see different data based on their role.
Prompt: "In Retool, create an admin panel for a SaaS company. Use Retool's built-in permissions and a custom SQL query that filters data based on the current user's role. The roles are: admin (sees all data), manager (sees only their team's data), and viewer (read-only). Store user roles in a PostgreSQL table 'user_roles'. In the query, join the main data table with user_roles and filter using the current user's email (available as {{current_user.email}}). Add a sidebar that shows different menu items based on role. For example, only admins see 'User Management'."
Example Result: The user creates a query like:
SELECT * FROM orders o
JOIN user_roles ur ON ur.email = '{{current_user.email}}'
WHERE (ur.role = 'admin') OR (ur.role = 'manager' AND o.team_id = ur.team_id)
They use conditional visibility on menu items: {{current_user.role === 'admin'}}. The panel enforces security at the database level.
11. Airtable: Project Budget Tracker with Automated Notifications
Task: Track project budgets and alert when over budget.
Prompt: "Create a project budget tracker in Airtable. Tables: Projects (Name, Budget, Spent So Far), Expenses (Project (link), Amount, Date). Use a rollup field in Projects to sum all linked Expense amounts into 'Spent So Far'. Add a formula field 'Remaining' = Budget - Spent So Far. Use an automation: when Spent So Far exceeds Budget, send an email to the project manager (a linked record from a Staff table) with the subject 'Project [Name] is over budget!' and body including remaining amount. Also create a color-coded view: records with negative Remaining are highlighted in red."
Example Result: The user sets up the rollup and formula fields. The automation is configured with a 'When a record matches conditions' trigger (Spent So Far > Budget) and sends an email. The view uses conditional formatting to turn rows red when Remaining < 0. Managers receive instant alerts.
12. Bubble: Stripe Subscription Integration with Webhook Handling
Task: Implement a subscription payment system with Stripe and handle recurring billing.
Prompt: "Integrate Stripe subscriptions into a Bubble app. Use the Stripe plugin. Create a pricing page with three plans: Basic ($10/mo), Pro ($25/mo), Enterprise ($50/mo). When a user clicks 'Subscribe', call Stripe's checkout session creation API, then redirect the user to Stripe's hosted checkout page. After successful payment, Stripe sends a webhook to a Bubble backend workflow. In the webhook handler, update the user's plan in Bubble's database. Also handle subscription cancellation and renewal by listening to 'customer.subscription.updated' and 'customer.subscription.deleted' events. Store the Stripe subscription ID in the user record."
Example Result: The user installs the Stripe plugin, creates a backend workflow with the 'Stripe - Create Checkout Session' action, and sets the success URL to a 'Thank you' page. They set up a webhook endpoint in Bubble's backend workflows, mapping Stripe events to custom actions that update the user's plan and expiration date. The system handles billing automatically.
Conclusion
Low-code and no-code platforms are incredibly powerful, but their true potential is unlocked when you combine them with well-structured prompts. Whether you're a beginner setting up a CRM in Airtable, an intermediate user building multi-step forms in Bubble, or an expert orchestrating real-time collaboration in Retool, these 12 prompts give you a clear path to success. Start with the basic prompts to get comfortable, then challenge yourself with the advanced and expert ones. Each prompt is a template you can adapt to your own business logic. The next time you open Airtable, Bubble, or Retool, think in prompts — they will save you time, reduce errors, and help you build better applications faster.
Comments