> 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/sources/category/marketing/intercom/best-practices.md).

# Best Practices

## Recommended setup

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Use date filters to avoid timeouts</strong></td><td>Import conversations, tickets, and contacts in smaller time windows (e.g., weekly or daily) rather than all at once. This keeps individual imports under the 9-minute API timeout. Append multiple smaller imports to build your full dataset.</td></tr><tr><td><strong>Start with a test run on a single day</strong></td><td>Before scheduling a large import, manually run a single day's worth of data to confirm everything works. This helps you spot filtering issues early.</td></tr><tr><td><strong>Choose the right report for your use case</strong></td><td>Don't pull all reports—focus on what you need. For example, if you only need ticket metrics, use "List of tickets" rather than "List of conversations" plus "List of tickets."</td></tr></tbody></table>

## Data refresh and scheduling

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Schedule incremental daily or weekly imports</strong></td><td>Instead of one large monthly import, set up daily or weekly imports with a rolling date range (e.g., last 7 days). This keeps your data fresh and avoids timeout risks.</td></tr><tr><td><strong>Use macros for rolling date filters</strong></td><td>Replace fixed dates with macros like `{{today}}`, `{{yesterday}}`, or `{{7daysago}}` so your date filters automatically adjust. This makes scheduling hands-off.</td></tr><tr><td><strong>Stagger imports if you have multiple data flows</strong></td><td>If you're pulling conversations and tickets, schedule them at different times (e.g., conversations at 2 AM, tickets at 2:30 AM) to avoid API overload.</td></tr></tbody></table>

## Performance optimization

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Filter early with advanced filters</strong></td><td>Use Intercom's advanced filters (status, team, priority) at the source rather than filtering in your destination spreadsheet. This reduces data transfer and speeds up imports.</td></tr><tr><td><strong>Append or aggregate strategically</strong></td><td>If you're pulling data from multiple teams or time periods, use Coupler.io's Append transformation to combine them in one step, then Aggregate to calculate metrics like total ticket volume or average response time.</td></tr></tbody></table>

## Common pitfalls

{% columns %}
{% column %}
**Do**

* Test with a narrow date range first (one day or week)
* Use append mode for incremental imports with non-overlapping date ranges
* Monitor your first few scheduled runs to catch timeout patterns early
* Filter by status or team at the source to reduce data volume
* Space out multiple data flows if running them on a schedule
  {% endcolumn %}

{% column %}
**Don't**

* Pull all conversations or tickets from your entire workspace in one import
* Re-run the same date range multiple times in append mode (causes duplicates)
* Run multiple Intercom data flows simultaneously
* Ignore timeout errors—adjust your filters or date ranges immediately
* Use append mode without carefully planning non-overlapping date ranges
  {% endcolumn %}
  {% endcolumns %}

{% hint style="danger" %}
**Timeout is the #1 issue with Intercom imports.** If you hit a timeout, immediately reduce your date range or add advanced filters. Don't just re-run the same import—it will fail again. Start with 1-7 days at a time and scale up only if successful.
{% endhint %}


---

# 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/sources/category/marketing/intercom/best-practices.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.
