> For the complete documentation index, see [llms.txt](https://docs-origin.anvil.bot/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs-origin.anvil.bot/user-guides/collecting-data.md).

# Collecting Data

Capture rich multimodal data for all your downstream tasks

## Open up the Anvil Web App

The Anvil Web App is the hub for managing data collection. Data is collected in Episodes, which are grouped into Sessions.

Open it up, either by clicking the Desktop shortcut or navigating yourself to `localhost:3000` in the browser, and click `New Session` to create a session:

<figure><img src="https://4223670213-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8swLPls6cg6zxcYD7sj%2Fuploads%2FQkGjxO9QLkTjswBH70kj%2FScreenshot%20from%202026-02-25%2015-31-19.png?alt=media&amp;token=1c3aa347-2f43-4424-92c1-9da21a56a47a" alt=""><figcaption></figcaption></figure>

## Create an episode and start recording

Name your session and click `Create Session`:

<figure><img src="https://4223670213-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8swLPls6cg6zxcYD7sj%2Fuploads%2FNKaArGFsCjTH8MIlwJBA%2FScreenshot%20from%202026-02-26%2014-59-07.png?alt=media&amp;token=07a87124-f3c2-479a-9aff-920c48143cbc" alt=""><figcaption></figcaption></figure>

Click `New Episode`, scroll down past the topics list and click `Start Recording`:

<figure><img src="https://4223670213-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8swLPls6cg6zxcYD7sj%2Fuploads%2FMyHuoB8eR7jva1F52FvC%2Fsession_homepage.png?alt=media&amp;token=73dabe45-f0fa-41eb-8195-d12f0df29149" alt=""><figcaption></figcaption></figure>

<figure><img src="https://4223670213-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8swLPls6cg6zxcYD7sj%2Fuploads%2FrM9Od7XAiTWIlnQQXRF4%2Fstart_recording.png?alt=media&amp;token=a30e3dfe-b9af-4e68-831c-9344207866e0" alt=""><figcaption></figcaption></figure>

You're now actively recording. You can use this page to monitor your data and system health which recording is happening, and click `Stop Recording` when you're done with this Episode.

<figure><img src="https://4223670213-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8swLPls6cg6zxcYD7sj%2Fuploads%2FiWxD2CYSlQIoBWAZXj4r%2Frecording_screen.png?alt=media&amp;token=1c9f7883-ddde-46d1-8826-c0c32d269679" alt=""><figcaption></figcaption></figure>

### Creating episodes with the Quest controllers

If you're recording data by yourself, it can be hard to control the robot and manage the Web App. To make this setup easier, you can use the A/B buttons on the Quest controller to start/stop episodes.\
\
Just pin the session you want new episodes to be created in:

<figure><img src="https://4223670213-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8swLPls6cg6zxcYD7sj%2Fuploads%2FO9hJc450EmzvmjrcwMl2%2FScreenshot%20from%202026-03-09%2011-41-29.png?alt=media&amp;token=1eda66da-08d4-4e2c-a5b3-74c879a94aae" alt=""><figcaption></figcaption></figure>

and now the A button will start recording a new episode in this session. Press the B button to stop recording of that episode.

## Get your data

When you're done, you can download your data from the browser, either by episode or by session. Alternatively, you can find all the data at `~/anvil-loader/data/recordings` on your Anvil Devbox:

```bash
anvil@anvil-workcell:~/anvil-loader/data/recordings$ tree
.
├── tshirt-folding
│   └── 0001
│       ├── 0001_0.mcap
│       └── metadata.yaml
├── build-legos
│   └── 0001
│       ├── 0001_0.mcap
│       └── metadata.yaml
└── take-apart-legos
    ├── 0001
    │   ├── 0001_0.mcap
    │   └── metadata.yaml
    └── 0002
        ├── 0002_0.mcap
        └── metadata.yaml
```

Anvil data is recorded in the standard `MCAP` format which means that you can view, inspect, and manipulate it using many popular existing tools, like Foxglove and Rerun.

## Rehoming

To get clean data, it can be beneficial to start episodes from the exact same position. One press of the Y button on the Quest controller will initiate the rehoming sequence, which commands the robot to move back to its home position. Doing this in between episodes can help to ensure consistent and repeatable behavior.

## Next Steps

Once you've collected data, it's time to start [Training a Model](/user-guides/training-a-model.md)!
