> For the complete documentation index, see [llms.txt](https://help.blings.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.blings.io/guides/collect-viewer-data.md).

# Collect Viewer Data

Use this guide when an MP5 experience needs to collect information from a viewer, such as lead details, preferences, quiz answers, feedback, registration data, or requests.

The usual setup combines three parts:

* **Input Field connector** in Studio, so the viewer can type a value.
* **Submit Form connector** in Studio, so a viewer action submits one or more values.
* **Form Data** in Platform, so submissions can be reviewed or exported when the project is configured for Blings form collection.

{% hint style="info" %}
Form collection depends on project and account configuration. Confirm the data collection plan, consent language, storage expectations, and compliance requirements before launch.
{% endhint %}

## Collection Flow

{% stepper %}
{% step %}

### Decide What to Collect

List each value the viewer should submit. Give each value a stable field name such as `email`, `phone_number`, `preferred_plan`, `feedback_message`, or `quiz_answer`.
{% endstep %}

{% step %}

### Design the Input State

In Studio, make sure the visual scene has enough room for the input layer, placeholder text, validation message, submit button, and success state.
{% endstep %}

{% step %}

### Configure Input Field Connectors

Add an Input Field connector for each typed value. Confirm the target text layer, field name, placeholder, single-line or multiline behavior, empty-state behavior, and text fit.
{% endstep %}

{% step %}

### Configure the Submit Form Connector

Add a Submit Form connector to the button, hotspot, or interactive layer that submits the form. Include every field that should be submitted.
{% endstep %}

{% step %}

### Choose Submission Handling

Choose whether values are saved in Blings Form Data or handled by custom code. Match this decision to the integration, security, and compliance plan.
{% endstep %}

{% step %}

### Test the Full Viewer Flow

Preview the MP5, enter values, submit, test required and empty fields, confirm success behavior, and check that submission does not break other player interactions.
{% endstep %}

{% step %}

### Review Submissions in Platform

Open Platform Form Data when the project uses Blings form collection. Confirm that test submissions appear with the expected field names and values.
{% endstep %}
{% endstepper %}

## Example Setup

| Viewer field     | Studio connector                                               | Submit behavior                   | Platform result                                            |
| ---------------- | -------------------------------------------------------------- | --------------------------------- | ---------------------------------------------------------- |
| Email address    | Input Field named `email`                                      | Included in Submit Form connector | Saved as an `email` column or field in Form Data.          |
| Plan preference  | Input Field or choice-based interaction named `preferred_plan` | Included in Submit Form connector | Saved with each submission for follow-up or export.        |
| Feedback message | Multiline Input Field named `feedback_message`                 | Included in Submit Form connector | Available for review with the rest of the form submission. |

## QA Checklist

Before publishing a data-collection flow, confirm:

* Field names are stable and approved by the team that will use the data.
* Placeholder copy explains what the viewer should enter.
* Required and optional fields are handled intentionally.
* Long values, empty values, and mobile keyboard behavior are tested.
* The submit layer is clickable and clearly connected to the form.
* Success and failure states are controlled.
* Form Data or custom handling receives test submissions.
* Consent, privacy, and retention expectations are covered.

## Deep Dives

{% content-ref url="/pages/lt20SZVUbkT6ghpdYk2y" %}
[Input Field](/apps/blings-studio/connectors/input-field.md)
{% endcontent-ref %}

{% content-ref url="/pages/zCRyVOOHtlj7mplqnham" %}
[Submit Form](/apps/blings-studio/connectors/submit-form.md)
{% endcontent-ref %}

{% content-ref url="/pages/tcTMJOKSy05H4hRxVQ8F" %}
[Data, Catalog, and Forms](/apps/blings-platform/data-catalog-and-forms.md)
{% endcontent-ref %}


---

# 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:

```
GET https://help.blings.io/guides/collect-viewer-data.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
