formr survey framework

chain simple forms & surveys into long runs, use the power of R to generate pretty feedback and complex designs

Sign up (it's free!)

There are three main components: surveys, runs and the R package.

are simple or complicated forms and surveys used to gather information in a single session.

There is a wide variety of items to choose from: text and number inputs, Likert scales, sliders, geolocation, date pickers, dropdowns and many more. They are geared towards power users, so instead of dragging and dropping elements till your fingers bleed, you upload item spreadsheets that can easily be re-used, combined and shared.

enable you to link surveys and chain them together. Using a number of boombox-themed control elements to control the participant's way through your study, you can design studies of limitless complexity. You can

  • manage access to and eligibility for a study:
  • use different pathways for different users:
  • send email invites and reminders:
  • implement delays/pauses:
  • add external modules:
  • loop surveys and thus enable diaries and experience-sampling studies:
  • give custom feedback, through OpenCPU's R API.
  • randomise participants into groups for e.g. A-B-testing or experiments

The following designs and many more are possible:

  • simple one-shot surveys
  • complex one-shot surveys (using skipping logic, personalised text, complex feedback
  • surveys with eligibility limitations
  • diary studies including completely flexible automated email reminders
  • longitudinal studies (ie. wait 2 months after last participation or re-contact after they return from their exchange year). The items of later waves need not exist in final form at wave 1.
  • longitudinal social networks and other studies that require rating a variable number of things or persons

Wherever you use R in formr you can also use the functions in its R package. If you want to use the package in a different environment, you'll need to install it using these two lines of code.


The package currently has the following feature sets

  • Connecting to formr, importing your data, correctly typing all variables, automatically aggregating scales.
  • Easily making feedback plots e.g.
    qplot_on_normal(0.8, "Extraversion")
    The package also has a function to simulate possible data, so you can make feedback plots ahead of collecting data.
  • Some shorthand functions for frequently needed operations on the site:
    first(cars); last(cars); current(cars); "formr." %contains% "mr."