Skip to main content

Create Your First Reverse ETL Integration

Overview

This guide walks you through creating your first reverse ETL integration in Matia, from connecting your warehouse and destination to running your initial sync. Upon completion, you will have a running pipeline that moves data from your warehouse (via a model) into an operational destination (e.g. HubSpot, Salesforce).

1. Add a New Integration

In the left sidebar, click Integrations, then Add Integration. In the flow, choose a source and a destination. For reverse ETL, the source is your warehouse (or an existing warehouse asset); the destination is the operational system (e.g. HubSpot, Braze).

You can connect a new warehouse or destination in this flow or select existing assets.

2. Select and Connect Your Source

On the source step, select your data warehouse—e.g. Snowflake, BigQuery, Databricks. Use an existing connected warehouse or complete the connector setup (authenticate, configure, name, test, connect). Click Next.

3. Select and Connect Your Destination

On the destination step, search for and select the destination type (e.g. HubSpot, Salesforce, Google Ads). Connect a new destination or select an existing one. Complete authentication and configuration, then Test Connection and Connect. Click Next.

4. Define the Integration

In the Configure step you define what data to sync and how. Set:

  • Model: SQL that defines which rows and columns to pull from the warehouse. You can preview and edit the model here.
  • Destination object: The object in the destination that receives the data (e.g. Contact, Company, or a custom object in HubSpot).
  • Sync mode: Mirror (inserts, updates, deletes), Upsert (inserts and updates), or Update only / Delete only where supported.
  • Field mapping: Primary key in source and destination, and which model columns map to which destination fields. Use auto-mapping for suggestions based on names, or add mappings manually.
  • Trigger type: Manual, By interval, or Cron.
  • Data processing location: e.g. US or EU.

Use Test to push a single sample record to the destination and confirm the mapping. Then save to create the integration.

5. Enable and Run the Integration

From the integration details page, click Sync now. On the Status tab you can see:

  • Changed records: inserts, updates, and deletes that were applied.
  • For each sync run: Successful, Rejected (destination refused; API request/response shown), and Invalid (e.g. duplicate primary key) records.

Use these breakdowns to debug rejections or invalid records.


Next Steps:
See Create and configure a model and Configure field mapping, Schedule and trigger syncs, or How reverse ETL works and Sync modes and destinations for reference.