# Data Overview

Coupler.io pulls two types of data from Google Forms: the structure of the form itself and the responses submitted by respondents. Together, these give you a complete picture of both what you asked and what people answered.

## Entities

| Entity             | What it contains                                                                                |
| ------------------ | ----------------------------------------------------------------------------------------------- |
| **Forms**          | Form title, description, question text, question types, answer options, and form-level settings |
| **Form responses** | One row per submission — respondent ID, submission timestamp, and answers to each question      |

## Available fields

#### Forms fields

| Field              | Description                                                                   |
| ------------------ | ----------------------------------------------------------------------------- |
| `form_id`          | Unique identifier for the form                                                |
| `title`            | The title of the form                                                         |
| `description`      | The description shown to respondents                                          |
| `document_title`   | The document title (may differ from the visible form title)                   |
| `is_quiz`          | Whether the form is set up as a quiz                                          |
| `item_id`          | Unique ID for each question or item                                           |
| `item_title`       | The question text                                                             |
| `item_description` | Optional helper text shown under the question                                 |
| `item_type`        | Question type (e.g., multiple choice, short answer, checkboxes, linear scale) |
| `required`         | Whether the question is marked as required                                    |
| `options`          | Available answer choices (for multiple choice and checkbox questions)         |

#### Form responses fields

| Field                 | Description                                                                  |
| --------------------- | ---------------------------------------------------------------------------- |
| `response_id`         | Unique identifier for each submission                                        |
| `form_id`             | The form this response belongs to                                            |
| `create_time`         | Timestamp when the response was submitted                                    |
| `last_submitted_time` | Timestamp of the most recent edit to the response                            |
| `respondent_email`    | Email address of the respondent (only available if the form collects emails) |
| `item_id`             | The question this answer belongs to                                          |
| `item_title`          | The question text at time of submission                                      |
| `answer_value`        | The respondent's answer                                                      |
| `score`               | Score awarded (quiz forms only)                                              |

## Common field combinations

* **Response analysis**: `response_id` + `create_time` + `item_title` + `answer_value` — the core dataset for analyzing what respondents said
* **Response volume tracking**: `form_id` + `create_time` — count submissions over time to track response rates
* **Quiz scoring**: `response_id` + `respondent_email` + `score` — identify how individuals performed
* **Answer distribution**: `item_title` + `answer_value` — group and count answers to see which options are most popular

## Use cases by role

{% tabs %}
{% tab title="Marketers" %}

* Export lead generation form responses into Google Sheets or BigQuery for CRM enrichment
* Track submission volume over time to measure campaign performance
* Merge responses from multiple campaign forms using the **Append** transformation in Coupler.io
* Send open-text feedback to ChatGPT or Claude for sentiment analysis and theme extraction
  {% endtab %}

{% tab title="HR & Operations" %}

* Collect employee survey responses and refresh dashboards in Looker Studio automatically
* Use the **Forms** entity to audit question structure across multiple internal forms
* Join form responses with HR data in BigQuery for deeper workforce analysis
* Export onboarding or feedback forms to Excel for stakeholder reporting
  {% endtab %}

{% tab title="Researchers & Educators" %}

* Pull quiz responses with scores into Google Sheets for grade tracking
* Use the **Aggregate** transformation to calculate average scores or answer frequency
* Export raw responses to a CSV-friendly destination for statistical analysis
* Send open-ended responses to Gemini or Perplexity for qualitative summarization
  {% endtab %}
  {% endtabs %}

## Platform-specific notes

* Google Forms does not provide real-time webhooks — Coupler.io polls the API on your chosen schedule
* The `respondent_email` field is only populated if the form has **Collect email addresses** enabled in settings
* If you edit a question after responses have been collected, the `item_title` in older responses may differ from the current question text
* File upload question types return a Google Drive file URL, not the file itself
* For forms with many questions, each question appears as a separate row in the **Forms** entity — use the **Form responses** entity for a respondent-per-row view
* The API returns a maximum of 5,000 responses per request; Coupler.io handles pagination automatically
