Experiment data, straight to OSF.

A free, open-source service that sends data from any online experiment directly to the Open Science Framework. No server setup, no download step.

Built by the jsPsych team

experiment.html

// Save data with the jsPsych pipe plugin
const save_data = {
  type: jsPsychPipe,
  action: "save",
  experiment_id: "your_id",
  filename: filename,
  data_string: () =>
    jsPsych.data.get().csv()
};
// Send data with a fetch request
fetch(url, {
  method: "POST",
  headers: {
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    experimentID: "your_id",
    filename: "subject01.csv",
    data: dataAsString
  })
});

Using jsPsych? One trial saves all your data.

How it works

Three steps to start collecting data

1.

Create an OSF project and link your OSF account to DataPipe.

2.

Set up an experiment on DataPipe and add a few lines of code to your study to send data through the API.

3.

Activate data collection. Participant data goes straight to your OSF project as files — no downloads, no manual transfers.

Features

Born-open data collection

DataPipe sends experiment data directly to a public repository as it is collected, making openness the default rather than an afterthought. Read more about the rationale and design in Behavior Research Methods. If you use DataPipe in your research, we'd appreciate a citation!

Multiple data formats

Send CSV, JSON, or base64-encoded files like audio and video recordings. DataPipe handles decoding and storage automatically.

Built-in safeguards

Data validation, session limits, and required field checks protect your OSF project from malformed or malicious submissions.

Condition assignment

Automatically cycle through experimental conditions with balanced assignment, no server-side code required.

Created by the developers of jsPsych ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

Report an Issue

GitHub

Contact Us