# FAQ

<details>

<summary>What's the difference between Replace and Append mode?</summary>

**Replace** drops the existing table and recreates it with fresh data on every run. This is ideal when you always want a clean, current snapshot — for example, a live view of active campaigns or current CRM records.

**Append** adds new rows below the existing data without touching what's already there. Use this when you want to build a historical log — for example, tracking daily ad spend over time.

If you're unsure, Replace is the safer starting point. You can always switch to Append once you know your schema is stable.

</details>

<details>

<summary>Can I load data from multiple sources into the same Redshift database?</summary>

Yes. Each data flow writes to a specific schema and table that you define. You can create multiple data flows that all write to the same Redshift database, as long as each flow targets a distinct table (or you intentionally want to append data into a shared table).

</details>

<details>

<summary>What happens if my source adds new columns — will my Redshift table update automatically?</summary>

In **Replace mode**, yes — the table is recreated on every run, so new columns from the source will appear automatically.

In **Append mode**, no. The table schema is fixed at creation time. If the source introduces new columns, you'll need to manually run `ALTER TABLE ... ADD COLUMN` in Redshift before the next run, or the load will fail.

{% hint style="info" %}
For more detail on handling schema changes in Append mode, see the [Common Issues](https://docs.coupler.io/destinations/categories/database/redshift/common-issues) article.
{% endhint %}

</details>

<details>

<summary>Which Coupler.io sources can send data to Redshift?</summary>

All of them. Any source available in Coupler.io — including Google Ads, Facebook Ads, HubSpot, Shopify, PostgreSQL, and many others — can be routed to a Redshift destination. You can also combine multiple sources in a single data flow using Join, Append, or Aggregate transformations before the data lands in Redshift.

</details>

<details>

<summary>Do I need to create the table in Redshift before running a data flow?</summary>

No. If the table (or schema) you specify doesn't exist, Coupler.io will create it automatically on the first run — as long as the database user has the necessary CREATE privileges.

</details>

<details>

<summary>How do I keep my Redshift cluster from blocking Coupler.io?</summary>

If your cluster is inside a VPC or has inbound rules configured, you need to allowlist Coupler.io's IP addresses:

* `34.123.243.115`
* `34.170.96.92`

Add these to your security group on port `5439` (TCP). Without this, connection attempts will time out.

</details>

<details>

<summary>Can I use a read-only user for the Redshift connection?</summary>

No. Coupler.io needs to write data, so the user must have at minimum INSERT permissions on the target table, plus CREATE permissions if you want Coupler.io to create schemas or tables automatically. A read-only user will cause the data flow to fail during the load step.

</details>
