> For the complete documentation index, see [llms.txt](https://docs.coupler.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.coupler.io/destinations/categories/database/redshift/faq.md).

# 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](/destinations/categories/database/redshift/common-issues.md) 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>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.coupler.io/destinations/categories/database/redshift/faq.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
