Guide
How Do You Collect Training Data for a VLA Model?
Short answer
Collecting VLA training data means choosing a data source for each training stage, then capturing episodes that pair observations, actions and a task instruction. Published models drew on robot demonstrations, web data, simulation, teleoperation and human video. Firsthand collects the first-person human video side on demand, to a written spec.
Last reviewed:
How do you collect training data for a VLA model?
A vision-language-action (VLA) model learns from episodes that pair what the model sees with an instruction and an action. There is no single collection recipe. The five papers read for this guide assemble their data in different ways, and each describes its own approach in its own words. This guide reports those statements as the papers make them, attributes each one, and then describes how a custom collection is specified, captured, checked and delivered.
Collection starts with the training stage the data is for. The π0 paper describes a recipe in which "the model is first pre-trained on a very large and diverse corpus, and then fine-tuned on more narrow and more carefully curated data" (https://arxiv.org/abs/2410.24164). Pretraining data is collected for breadth. Fine-tuning data is collected for one task or a small set of tasks. Those are different collection jobs, and a spec for one is not a spec for the other.
The order below is the order the site describes for a custom collection. Each step is covered in its own section.
- Name the stage and the tasks. Say whether the data is for pretraining or fine-tuning, and list the tasks, scenes and objects it must cover.
- Write the skill spec. Put the task, the geometry that stays in frame, the accept criteria and the reject rule on paper before anyone captures anything.
- Choose the capture source. Published models used robot demonstrations, web data, simulation, teleoperation or human video. Each gives a different kind of action signal.
- Define the episode. Fix the observation streams, the action fields and the language field the episode must carry.
- Run a small first batch. Firsthand calls this a Spec Pilot: a small, fast batch that proves the spec and the accept criteria before volume is added.
- Validate and deliver. Every item clears the signed accept criteria, anonymization and consent checks, then ships in a training-ready format.
This guide covers where training data comes from and how a collection runs. For how much data to plan, see the guide on VLA dataset size. For the fields inside an episode, see the guide on VLA dataset format. For a capture-day checklist, see the egocentric data collection checklist. All three are linked under related pages.
How did published VLA models collect their training data?
The table reports, for each paper, how it says its training data was assembled. Cells use the paper’s own wording or a close attribution. Where a paper is silent on a point, the cell says "Not stated in the sources read". Nothing is converted, summed or ranked, because the papers count data in different units: robots and months, demonstrations, hours, trajectories and timesteps.
| Model | How the paper says its data was collected | Data source type | Source |
|---|---|---|---|
| RT-2 | Co-fine-tuned on web-scale data and robot demonstration data from earlier work, which "was collected with 13 robots over 17 months in an office kitchen environment". The paper calls the robot data "instruction-annotated robotic trajectories". The web data "consists of visual question answering, captioning, and unstructured interwoven image and text examples". How the robot demonstrations were controlled: Not stated in the sources read. | Robot demonstrations plus web data | https://arxiv.org/abs/2307.15818 |
| OpenVLA | Trained on "970k robot demonstrations from the Open X-Embodiment dataset". How those demonstrations were originally collected: Not stated in the sources read. | Existing public robot demonstration dataset | https://arxiv.org/abs/2406.09246 |
| π0 | A pre-training mixture of "our own dexterous manipulation datasets", "collected on 7 different robot configurations for 68 different tasks", and "the entire OXE dataset", "which contains data from 22 robots". The same paper uses "diverse language labels" in pre-training. How its own data was controlled during collection: Not stated in the sources read. | Own robot datasets plus open-source robot data | https://arxiv.org/abs/2410.24164 |
| GR00T N1 | A "data pyramid": "large quantities of web data and human videos lay the base of the pyramid; synthetic data generated with physics simulations and/or augmented by off-the-shelf neural models form the middle layer, and real-world data collected on the physical robot hardware complete the top". The paper describes teleoperation infrastructure that captures "human hand motion, including 6-DoF wrist poses and hand skeletons", and fine-tunes video models on "88 hours of in-house collected teleoperation data". | Web data, human video, simulation, neural-generated video and real-robot teleoperation | https://arxiv.org/abs/2503.14734 |
| EgoScale | Pretraining on "egocentric human activity datasets totaling 20,854 hours of video", the majority of which are "in-the-wild egocentric recordings spanning diverse real-world environments (e.g., household, industrial, retail, and educational settings)". "All recordings are captured using egocentric RGB cameras at 30 FPS." A separate mid-training stage uses "aligned human-robot" data "collected using the same sensing setup as the robot". | Egocentric human video plus aligned human-robot data | https://arxiv.org/abs/2602.16710 |
Collection methods exactly as each paper states them. Units differ between papers, so no figure is converted, summed, averaged or ranked.
RT-2 and OpenVLA both start from robot demonstrations. RT-2 states how many robots and how many months produced its demonstrations, and OpenVLA states the size of the public dataset it trains on. Neither paper, in the passages read, says whether those demonstrations were collected by teleoperation, so this guide does not say so either.
π0 combines its own datasets with open-source data. It states the number of robot configurations and tasks behind its own data and the number of robots behind the open-source portion. GR00T N1 is the most explicit about mixing sources. Its pyramid puts web data and human video at the base, synthetic data in the middle and real-robot data at the top. It also says how it handles sources that carry no actions: "To train our model with action-less data sources, such as human videos and neural-generated videos, we learn a latent-action codebook and also use a trained inverse dynamics model (IDM) to infer pseudo-actions."
EgoScale is the one paper of the five that centres on egocentric human video. The paper says human data can be gathered at a scale that robot teleoperation cannot match: "Humans routinely perform dexterous manipulation across diverse objects, environments, and task variations at a scale that far exceeds what can be collected through robot teleoperation."
The papers do not agree on a single recipe, and none of them derives a general rule for which source to use. This guide does not derive one either. The pattern it can report is narrower: several of these papers combine more than one data source, and each source supplies a different kind of signal.
What does a VLA training episode need to contain?
The site’s guide to VLA dataset format describes a VLA training episode as a timestamped sequence of observations, an action at each step and a language task instruction, stored in a format such as RLDS or LeRobot. That framing is the starting point here. Collection has to produce all three parts, or a clear plan for how your pipeline will produce the missing ones.
Firsthand collects first-person human video, so the fields it delivers sit on the observation and action side. The fields the site states are: head-camera and wrist-camera streams, 21-joint 3D hand pose with a per-joint visibility flag, wrist trajectories, contact events, action segments and a 200 Hz 6-DoF IMU. Where a task is depth-sensitive, the site states that calibrated stereo is added. The streams are hardware-triggered onto a single clock, so every field in an episode shares one timeline.
The language side is narrow by design. The only language field the site states for Firsthand capture is one task instruction per episode, held on the same clock as the rest of the episode. The site does not state narration, captions, dense language annotation or any other language data for Firsthand capture, so none is described here.
Every action field Firsthand delivers is continuous. If your model predicts discrete action tokens, or acts through a robot rather than a hand, chunking, tokenization and retargeting to your action space are steps your own pipeline performs after delivery. The site does not state a robot action space for Firsthand data, and it does not deliver robot actions.
Teleoperation vs egocentric human video: what does each give you?
Teleoperation and egocentric human video differ in where the action signal comes from. The table sets out what the two papers that describe each approach say. It is not a ranking, and the papers do not rank them.
| Question | Teleoperation, as GR00T N1 describes it | Egocentric human video, as EgoScale and GR00T N1 describe it |
|---|---|---|
| Who performs the task? | A human operator drives a robot. The paper describes devices that capture "human hand motion" which is then retargeted to the robot. | A person performs the task directly, recorded from the first-person view. |
| Where do the actions come from? | "Robot actions are produced through retargeting and executed on robots in real and simulation environments." | EgoScale supervises on "relative wrist motion and retargeted high-DoF hand joint actions". GR00T N1 infers pseudo-actions for action-less human video with a latent-action codebook and an inverse dynamics model. |
| What does the paper say about scale? | Not stated in the sources read. | EgoScale: human data is gathered at "a scale that far exceeds what can be collected through robot teleoperation". |
| Does the data match the target robot? | The data is collected on robot hardware, at the top of the GR00T N1 pyramid. | Not by itself. EgoScale adds a separate aligned human-robot mid-training stage, "collected using the same sensing setup as the robot". |
Each cell is attributed to the paper named in the column header. Where the paper is silent, the cell says so.
The practical difference for a buyer is the mapping step. Human video contains no robot actions, so someone has to decide how hand motion maps to the actions your model learns. Firsthand delivers the human side and leaves that mapping to your pipeline. Firsthand captures first-person human video, not robot or teleoperation data, and it makes no claim to replace either.
The two are not exclusive. GR00T N1 and EgoScale both use human video alongside other sources rather than on its own. The choice for a given project depends on the tasks, the target robot and what your training code expects. The sources do not give a rule for it.
How do you write a skill spec and task instruction for VLA data?
The site defines a skill spec as the written contract for a capture program. It names the exact task, the geometry that must stay in frame, an explicit hour budget per condition, the reject rule and one acceptance test a reviewer can apply. In the site’s words, sharp specs produce coverage and vague specs only produce hours. The full template is in the skill spec guide, linked under related pages.
For VLA data, three decisions belong in the spec before capture. First, the stage: pretraining data is planned for coverage across tasks, scenes and objects, while fine-tuning data is planned around one task or a few. Second, the unit: hours, episodes, trajectories and demonstrations are different counts, so the spec should fix one. Third, the language field: each episode carries one task instruction, so the spec should list the tasks the instructions will name.
The π0 paper says its pre-training phase uses "diverse language labels". Firsthand’s stated language field is narrower: one task instruction per episode. The site does not state how long an instruction is, how it is worded or how many distinct instructions a collection holds, so those points are Not stated. If your training code needs richer language than one instruction per episode, plan that annotation on your side or raise it in the brief before capture.
The spec also fixes the acceptance test. Because every item is checked against the signed accept criteria before delivery, a criterion that cannot be applied by a reviewer to a single episode is not yet a criterion. A small first batch, the Spec Pilot, is the way to find that out on real footage before volume is added.
How is VLA data quality-checked and delivered?
On-demand does not mean lower standards. The site states that every item clears the signed accept criteria, anonymization and consent checks before delivery. Where coverage is already deep, the first validated batch arrives in a median of 48 hours from a signed spec. Where coverage is thin and contributors have to be recruited first, the site states three to four weeks. After the first batch, delivery is rolling, one validated batch at a time.
Delivery formats are RLDS, LeRobot, WebDataset and HDF5, and the data is buyer-owned. The table follows one collection from spec to delivery. The last column names an existing episode field where the site states one, and says "Not stated" where it does not.
| Collection step | What it produces | What the site states Firsthand delivers | Existing format field |
|---|---|---|---|
| Write the skill spec | A written contract: task, geometry in frame, accept criteria, reject rule, one acceptance test | A signed spec before capture starts | Not stated |
| Capture first-person video | Observation streams on one clock | Head-camera and wrist-camera video, depth, and a 200 Hz 6-DoF IMU, hardware-triggered onto a single clock; calibrated stereo where the task is depth-sensitive | Not stated here; see the episode schema |
| Label the actions | Action fields aligned to the video | 21-joint 3D hand pose with a per-joint visibility flag, wrist trajectories, action segments and contact events | hand_joints, hand_visible; action segments with start_ns, end_ns, verb and noun |
| Attach the language field | The instruction a language-conditioned policy trains against | One task instruction per episode, on the same clock | Not stated |
| Run a Spec Pilot | A small first batch that proves the spec and accept criteria | A small, fast first batch before volume is added | Not stated |
| Validate and deliver | A validated, anonymized, consented batch | Signed accept criteria, anonymization and consent checks on every item; RLDS, LeRobot, WebDataset or HDF5; buyer-owned | Not stated |
One custom collection, step by step. Everything in the third column is a claim the site already makes elsewhere.
Two limits apply. The site does not state an episode count, an hour count or a throughput figure for a custom VLA collection, so this guide gives none. And it states no result for any named VLA model trained on Firsthand data. Quality here means the item met the signed accept criteria, not that a model scored better on it.
When should you use custom VLA data collection?
Public mixtures such as Open X-Embodiment cover the robots and scenes their publishers collected. Custom collection makes sense when your tasks, objects, environments or label vocabulary fall outside that coverage, or when you need a narrow, filtered fine-tuning set faster than your own team can capture it.
- Your target tasks or objects are missing from the public data you can access, and a Spec Pilot would show it quickly.
- You need human-side egocentric episodes with hand pose, contact events and action segments on one clock, and you can map hand motion to your own action space.
- You want the unit, the accept criteria and the delivery format written down before capture starts, so the dataset loads into the training code you already run.
- You need to ship on data you own, under a buyer-owned license, rather than data with a restricted license.
Custom collection is a poor fit if you need robot actions, teleoperation data or dense language annotation from Firsthand. The site states none of those. It is also a poor fit if you need a camera-pose or map deliverable, because the site states only the 200 Hz 6-DoF IMU. Request a custom dataset with a brief naming the stage, the tasks and the delivery format.
FAQ
How Do You Collect Training Data for a VLA Model?, answered.
01How do you collect training data for a VLA model?
Choose a data source for each training stage, write a spec naming the tasks and accept criteria, capture episodes that pair observations, actions and a task instruction, run a small first batch, then validate and deliver. Published VLA models drew on robot demonstrations, web data, simulation, teleoperation and human video, each as its own paper states.
02How did published VLA models collect their training data?
Each paper differs. RT-2 uses robot demonstrations "collected with 13 robots over 17 months in an office kitchen environment" plus web data. OpenVLA trains on 970k robot demonstrations from the Open X-Embodiment dataset. π0 combines its own robot datasets with open-source data. GR00T N1 builds a data pyramid of web data, human video, synthetic data and real-robot data. EgoScale pretrains on 20,854 hours of egocentric human video. The figures are quoted from each paper and are not comparable.
03Can egocentric human video be used to train a VLA model?
EgoScale pretrains a VLA model on egocentric human video, and GR00T N1 places human video at the base of its data pyramid. Human video has no robot actions, so hand motion has to be mapped to the actions your model learns. Firsthand delivers the human side and leaves that mapping to your pipeline.
04Does Firsthand collect teleoperation or robot data?
No. Firsthand captures first-person human video, not robot or teleoperation data. It delivers fields such as 21-joint 3D hand pose with a per-joint visibility flag, wrist trajectories, contact events, action segments and a 200 Hz IMU.
05What language data does Firsthand capture include?
One task instruction per episode, on the same clock as the video and the action fields. That is the only language data the site ties to Firsthand capture. Nothing more is stated.
06How fast can a custom VLA dataset be collected?
The site states a median of 48 hours from signed spec to first validated batch where coverage is already deep, and three to four weeks where coverage is thin and contributors have to be recruited first. Episode counts and throughput are Not stated.
07What formats is VLA data delivered in?
RLDS, LeRobot, WebDataset and HDF5. The data is buyer-owned. Every item clears the signed accept criteria, anonymization and consent checks before delivery.
08Has Firsthand data trained a named VLA model?
This guide makes no claim that Firsthand data trained, fine-tuned or evaluated RT-2, OpenVLA, π0, GR00T N1 or any other named model, and Firsthand is not affiliated with the authors of these papers. Every third-party fact here comes from the paper linked beside it.
Sources
Where is this documented?
- RT-2 (arXiv 2307.15818) (opens in a new tab)Source for the robot demonstration data collected with 13 robots over 17 months, the instruction-annotated trajectories and the web data description. arxiv.org
- OpenVLA (arXiv 2406.09246) (opens in a new tab)Source for the 970k robot demonstrations from the Open X-Embodiment dataset. arxiv.org
- π0 (arXiv 2410.24164) (opens in a new tab)Source for the pre-training and post-training recipe, the 7 robot configurations and 68 tasks, the OXE data from 22 robots and the diverse language labels. arxiv.org
- GR00T N1 (arXiv 2503.14734) (opens in a new tab)Source for the data pyramid, the teleoperation infrastructure description, the 88 hours of in-house teleoperation data and the latent-action and inverse dynamics handling of action-less video. arxiv.org
- EgoScale (arXiv 2602.16710) (opens in a new tab)Source for the 20,854 hours of egocentric human video, the in-the-wild recording settings, the 30 FPS capture and the aligned human-robot mid-training data. arxiv.org
Check it against the sample pack.
40 episodes across 4 environments, delivered in the exact schema these guides describe.