# 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 for large forms</strong></td><td>If your form has thousands of responses, set a "Submitted after" date to limit each export to a manageable window. This keeps runs fast and avoids hitting API limits.</td></tr><tr><td><strong>Append multiple forms into one dataset</strong></td><td>If you run the same survey across multiple campaigns or regions, use Coupler.io's Append transformation to combine responses from each form into a single table for unified analysis.</td></tr><tr><td><strong>Name your questions clearly in Typeform</strong></td><td>Each question becomes a column named after its label. Descriptive, consistent labels make your exported data immediately readable without needing cleanup.</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>Match refresh frequency to your form activity</strong></td><td>A high-traffic lead gen form might need hourly refreshes, while a quarterly NPS survey only needs a weekly schedule. Over-scheduling quiet forms wastes runs.</td></tr><tr><td><strong>Use Form summary for dashboards, not raw responses</strong></td><td>If you're powering a live dashboard in Looker Studio, the Form summary entity is much lighter than exporting all raw responses. Use it when you only need aggregated metrics.</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>Split high-volume forms by date range</strong></td><td>For forms with tens of thousands of responses, create separate data flows with non-overlapping date windows and use Append to combine them. This avoids timeout errors on single large pulls.</td></tr><tr><td><strong>Send response data to AI destinations for instant analysis</strong></td><td>Connect Form responses to ChatGPT, Claude, or Gemini to summarize open-text answers, classify sentiment, or generate reports — no manual review needed.</td></tr></tbody></table>

## Common pitfalls

{% hint style="danger" %}
Renaming questions in Typeform changes the column names in future exports. If downstream tools (formulas, dashboards, scripts) reference specific column names, a question rename will break them. Agree on final question labels before going live.
{% endhint %}

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

* Use hidden fields to pass respondent identifiers (e.g., user ID, UTM source) so you can join Typeform data with other datasets
* Run a manual export first to confirm columns look as expected before scheduling
* Use the Form summary entity when you only need aggregate stats
  {% endcolumn %}

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

* Rename live Typeform questions if downstream tools depend on column names
* Export all responses on every run when only new submissions are needed — use the "Submitted after" filter
* Connect your personal Typeform account if the forms you need are owned by a team workspace account
  {% endcolumn %}
  {% endcolumns %}
