Back to Blog
n8nBaserowintegrationautomationtutorial

n8n + Baserow Integration: 5 Powerful Workflows You Can Build

n8nautomation TeamApril 20, 2026
TL;DR: Baserow is an open-source Airtable alternative that pairs perfectly with n8n for powerful database automation. This guide shows you 5 production-ready workflows: CRM sync, form-to-database automation, multi-table reporting, backup systems, and approval workflows—all without writing code.

Baserow is the open-source database platform that gives you Airtable-like power without vendor lock-in. When you connect Baserow to n8n, you unlock powerful automation capabilities that let you build custom business logic, sync data across systems, and create sophisticated workflows—all while keeping your data under your control.

Whether you're managing customer data, tracking projects, or building internal tools, the n8n Baserow integration lets you automate repetitive database tasks and connect Baserow to hundreds of other apps in your stack.

Why Baserow + n8n Make a Perfect Pair

Baserow and n8n share the same philosophy: open-source, self-hostable, and extensible. Here's why they work so well together:

  • Both are open-source: No vendor lock-in, full control over your data, and transparent development.
  • Self-hosting options: Run both on your own infrastructure for maximum privacy and compliance.
  • Flexible data models: Baserow's flexible tables + n8n's workflow logic = unlimited automation possibilities.
  • Real-time webhooks: Baserow can trigger n8n workflows instantly when data changes.
  • Rich API access: Full CRUD operations on tables, rows, fields, and views.

With n8n's native Baserow node, you can read, create, update, and delete records without writing a single API call. And if you need advanced features, the HTTP Request node gives you access to Baserow's complete API.

How to Connect Baserow to n8n

Before building workflows, you need to connect n8n to your Baserow instance. Here's how:

Step 1: Get Your Baserow API Token

  1. Log into your Baserow account (self-hosted or cloud).
  2. Click your profile icon in the top-right corner.
  3. Select SettingsAPI Tokens.
  4. Click Create Token and give it a descriptive name like "n8n Integration".
  5. Set permissions based on your needs (read/write access to specific databases).
  6. Copy the generated token—you'll need it in n8n.

Step 2: Add Baserow Credentials in n8n

  1. Open your n8n instance at n8nautomation.cloud.
  2. Create a new workflow or open an existing one.
  3. Add a Baserow node to your canvas.
  4. Click Create New Credential.
  5. Enter your Baserow host URL (e.g., https://api.baserow.io or your self-hosted URL).
  6. Paste your API token from Step 1.
  7. Click Save and test the connection.

Tip: If you're self-hosting Baserow, make sure your n8n instance can reach your Baserow server. For cloud Baserow, use https://api.baserow.io as the host URL.

Step 3: Find Your Database and Table IDs

Every Baserow workflow needs two key identifiers:

  • Database ID: Found in the URL when viewing your database (e.g., /database/123).
  • Table ID: Found in the URL when viewing a table (e.g., /table/456).

You'll use these IDs in your n8n Baserow nodes to specify which table to interact with.

Workflow 1: Sync CRM Contacts to Baserow

Keep your Baserow customer database in sync with your CRM automatically. This workflow pulls new contacts from HubSpot, Salesforce, or Pipedrive and creates or updates records in Baserow.

Nodes You'll Need:

  • Schedule Trigger: Runs every hour to check for new contacts.
  • HubSpot (or your CRM): Gets recently created or updated contacts.
  • Baserow: Searches for existing contacts by email.
  • IF: Checks if the contact already exists in Baserow.
  • Baserow (Create): Adds new contacts.
  • Baserow (Update): Updates existing contacts.

How It Works:

  1. The workflow runs every hour via the Schedule Trigger node.
  2. The HubSpot node fetches contacts created or modified in the last hour.
  3. For each contact, the first Baserow node searches your "Contacts" table for a matching email.
  4. The IF node checks if a match was found.
  5. If no match exists, the workflow creates a new Baserow record with contact details.
  6. If a match exists, the workflow updates the existing record with the latest data.

Tip: Use Baserow's "Link to Another Record" field type to connect contacts to related deals, companies, or projects in other tables.

Configuration Details:

In the Baserow Search node, configure these settings:

  • Operation: Get Rows
  • Database: Your database ID
  • Table: Your contacts table ID
  • Filter: field_12345 (your email field) equals {{ $json.email }}

In the Baserow Create/Update nodes, map CRM fields to your Baserow columns using expressions like {{ $json.firstname }}, {{ $json.company }}, etc.

Workflow 2: Automate Form Responses into Baserow

Collect form submissions from Typeform, Google Forms, or your website and automatically organize them in Baserow with enrichment, validation, and notifications.

Nodes You'll Need:

  • Webhook Trigger: Receives form submissions in real-time.
  • Code Node: Validates and cleans form data.
  • HTTP Request (Optional): Enriches data with external APIs (e.g., company info from Clearbit).
  • Baserow: Creates a new record with form data.
  • Slack or Email: Sends notification to your team.

How It Works:

  1. Your form sends a webhook to n8n when someone submits it.
  2. The Code node validates required fields and formats data (e.g., converts phone numbers, normalizes email addresses).
  3. Optionally, the HTTP Request node enriches the submission with company data or geolocation info.
  4. The Baserow node creates a new record in your "Submissions" table with all the data.
  5. A Slack message notifies your team about the new submission with a link to the Baserow record.

Code Node Example (Data Validation):

// Validate and clean form data
const items = $input.all();

return items.map(item => {
  const data = item.json;
  
  return {
    json: {
      name: data.name?.trim() || 'Unknown',
      email: data.email?.toLowerCase().trim(),
      phone: data.phone?.replace(/[^0-9+]/g, ''),
      message: data.message?.trim(),
      submitted_at: new Date().toISOString(),
      status: 'New'
    }
  };
});

This ensures your Baserow records are clean and consistent, making them easier to work with later.

Workflow 3: Generate Multi-Table Reports

Pull data from multiple Baserow tables, combine it with external sources, and generate comprehensive reports automatically.

Nodes You'll Need:

  • Schedule Trigger: Runs weekly on Monday morning.
  • Baserow (multiple instances): Gets data from different tables.
  • Merge Node: Combines data from multiple sources.
  • Code Node: Calculates metrics and formats report data.
  • Google Sheets or PDF Node: Creates the formatted report.
  • Email Node: Sends the report to stakeholders.

How It Works:

  1. The workflow runs every Monday at 9 AM via Schedule Trigger.
  2. Multiple Baserow nodes pull data from different tables:
    • "Sales" table for revenue data
    • "Customers" table for customer counts
    • "Support Tickets" table for resolution metrics
  3. The Merge node combines all the data into a single stream.
  4. The Code node calculates KPIs like revenue growth, customer acquisition rate, and ticket resolution time.
  5. The Google Sheets node creates a formatted spreadsheet with charts.
  6. The Email node sends the report to your leadership team with the sheet attached.

Tip: Use Baserow's built-in filters and sorting in your n8n nodes to pre-process data before merging. This reduces processing time and keeps your workflows efficient.

Code Node Example (Calculate Metrics):

// Calculate weekly metrics from Baserow data
const salesData = $('Baserow Sales').all();
const customerData = $('Baserow Customers').all();

const totalRevenue = salesData.reduce((sum, item) => sum + item.json.amount, 0);
const newCustomers = customerData.filter(item => {
  const created = new Date(item.json.created_at);
  const weekAgo = new Date(Date.now() - 7 * 24 * 60 * 60 * 1000);
  return created > weekAgo;
}).length;

return [{
  json: {
    week_ending: new Date().toISOString().split('T')[0],
    total_revenue: totalRevenue,
    new_customers: newCustomers,
    avg_deal_size: totalRevenue / salesData.length
  }
}];

Workflow 4: Automated Baserow Backup System

Create automatic backups of your Baserow data to Google Drive, AWS S3, or another storage provider. This workflow ensures you never lose critical data.

Nodes You'll Need:

  • Schedule Trigger: Runs daily at midnight.
  • Baserow: Exports all rows from critical tables.
  • Code Node: Converts data to CSV or JSON format.
  • Google Drive or AWS S3: Uploads the backup file.
  • Slack: Confirms successful backup.

How It Works:

  1. The workflow runs every night at midnight via Schedule Trigger.
  2. The Baserow node fetches all rows from your most important tables.
  3. The Code node converts the data to CSV format with proper headers and formatting.
  4. The Google Drive node uploads the file to a "Baserow Backups" folder with a timestamp in the filename.
  5. The Slack node sends a confirmation message with the backup size and row count.
Note: If you have large Baserow tables (10,000+ rows), use pagination in the Baserow node and the Split In Batches node to avoid memory issues. Set batch size to 1,000 rows for optimal performance.

Code Node Example (Convert to CSV):

// Convert Baserow data to CSV
const items = $input.all();

if (items.length === 0) return [];

// Get column headers from first item
const headers = Object.keys(items[0].json);
const csvRows = [headers.join(',')];

// Add data rows
items.forEach(item => {
  const values = headers.map(header => {
    const value = item.json[header];
    // Escape commas and quotes in CSV
    if (typeof value === 'string' && (value.includes(',') || value.includes('"'))) {
      return `"${value.replace(/"/g, '""')}"`;
    }
    return value || '';
  });
  csvRows.push(values.join(','));
});

const csvContent = csvRows.join('\n');
const timestamp = new Date().toISOString().split('T')[0];

return [{
  json: {},
  binary: {
    data: {
      data: Buffer.from(csvContent).toString('base64'),
      mimeType: 'text/csv',
      fileName: `baserow-backup-${timestamp}.csv`
    }
  }
}];

Workflow 5: Build Approval Workflows with Baserow

Create multi-step approval processes where requests are tracked in Baserow and approvers are notified automatically.

Nodes You'll Need:

  • Baserow Trigger: Watches for new rows or status changes.
  • IF Node: Routes based on approval status.
  • Email or Slack: Notifies approvers.
  • Webhook: Receives approval decisions.
  • Baserow Update: Updates record status.

How It Works:

  1. Someone submits a request (expense, PTO, content approval) by creating a Baserow record.
  2. The Baserow Trigger node detects the new record.
  3. The IF node checks if the request needs manager approval based on amount or type.
  4. An Email node sends an approval request to the manager with "Approve" and "Reject" links.
  5. The manager clicks a link, which triggers a webhook back to n8n.
  6. The Baserow Update node changes the record status to "Approved" or "Rejected".
  7. A final notification goes to the requester with the decision.

Setting Up the Approval Links:

In your Email node, create approval links that include the record ID and decision:

Approve: https://your-n8n.n8nautomation.cloud/webhook/approval?id={{ $json.id }}&action=approve
Reject: https://your-n8n.n8nautomation.cloud/webhook/approval?id={{ $json.id }}&action=reject

The webhook workflow receives these parameters and updates Baserow accordingly. You can also add approval reasons, timestamps, and approver names to create a complete audit trail.

Best Practices for Baserow + n8n Automation

After building dozens of Baserow workflows, here are the patterns that work best:

1. Use Field IDs, Not Names

Baserow fields have both names and IDs. When building n8n workflows, use field IDs (field_12345) instead of names. This prevents your workflows from breaking if someone renames a column in Baserow.

2. Implement Error Handling

Always add error workflows to your Baserow automations:

  • Use the Error Trigger node to catch failures.
  • Log errors to a "Workflow Errors" table in Baserow.
  • Send alerts to Slack or email when critical workflows fail.
  • Include the original data in error logs so you can retry failed operations.

3. Batch Operations for Performance

If you're processing hundreds or thousands of Baserow records, use these techniques:

  • Enable "Batch Processing" in Baserow nodes (processes multiple items per API call).
  • Use the Split In Batches node for very large datasets.
  • Add a Wait node between batches to avoid rate limiting.
  • Process records in parallel when possible (use the merge node to recombine results).

4. Leverage Baserow Views

Create filtered views in Baserow and reference them in n8n:

  • "Pending Approval" view shows only unprocessed records.
  • "High Priority" view filters by urgency.
  • "This Month" view uses date filters to limit results.

This reduces the amount of data n8n needs to process and keeps your workflows fast.

5. Document Your Workflows

Use n8n's sticky notes to document:

  • Which Baserow tables and fields each workflow uses.
  • Required credentials and permissions.
  • What triggers the workflow and expected output.
  • Who to contact if something breaks.

Tip: Store your Baserow database and table IDs in n8n environment variables. This makes it easy to switch between dev and production Baserow instances without editing every workflow.

6. Monitor Workflow Performance

Track these metrics for your Baserow automations:

  • Execution time: How long does each workflow take?
  • Success rate: What percentage of executions complete without errors?
  • API usage: Are you approaching Baserow's rate limits?
  • Data volume: How many records are processed per day?

With n8nautomation.cloud, you get automatic workflow monitoring, execution logs, and performance metrics built in—no setup required.

Start Automating Baserow Today

The Baserow + n8n combination gives you the best of both worlds: a flexible, self-hostable database paired with powerful automation that connects to your entire tech stack. Whether you're syncing CRM data, automating form processing, generating reports, backing up critical data, or building approval workflows, these five patterns give you a solid foundation to build on.

The real power comes from combining these patterns and customizing them for your specific needs. Start with one workflow, get it running smoothly, then gradually expand your automation coverage. Before long, you'll have a robust system that saves hours every week while keeping your data organized and accessible.

Ready to start building Baserow automations? Get started with n8nautomation.cloud—your dedicated n8n instance is ready in minutes, with automatic backups, 24/7 uptime, and zero server management required.

Ready to automate with n8n?

Get affordable managed n8n hosting with 24/7 support.