Skip to content
Download qualtrics survey data directly into R!
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
R Add option to use import IDs as column names instead of Qualtrics que… Jul 22, 2019
docs New version of rotemplate Apr 30, 2019
img New function fetch_survey from getSurvey, with various slight imp… Mar 23, 2019
inst/extdata Added metadata examples in documentation Apr 6, 2018
man Add option to use import IDs as column names instead of Qualtrics que… Jul 22, 2019
pkgdown/favicon Add pkgdown site. Addresses #104. Mar 26, 2019
vignettes Changes based on feedback from CRAN Apr 11, 2019
.Rbuildignore Submitted to CRAN Mar 30, 2019
.gitattributes Add gitattributes (for appveyor) Jun 16, 2017
.gitignore Add docs/ back Mar 26, 2019
CRAN-RELEASE Submit to CRAN again Apr 11, 2019
DESCRIPTION Rewrite infer_data_types(). Addresses #114, #113, #112, #101. May 19, 2019
LICENSE Relicense to MIT. Closes #95. Feb 4, 2019 Relicense to MIT. Closes #95. Feb 4, 2019
NAMESPACE Deprecate registerOptions() and new function for column_map(). Addres… Jul 20, 2019
README.Rmd Update pkgdown site with more contrast for links Apr 30, 2019 Update pkgdown site with more contrast for links Apr 30, 2019
_config.yml Set theme jekyll-theme-minimal Jan 24, 2018
appveyor.yml Add appveyor yml Jun 16, 2017 Update CRAN comments, one more use of 'Qualtrics'. Apr 11, 2019
paper.bib Add paper Feb 4, 2018 Mods Feb 4, 2018
qualtRics.Rproj Ready for submission Oct 17, 2016


Authors: Julia Silge, Jasper Ginn
License: MIT

Build Status AppVeyor Build Status CRAN_Status_Badge CODECOV rOpenSci DOI DOI Downloads Total Downloads Project Status: Active – The project has reached a stable, usable state and is being actively developed.

Qualtrics is an online survey and data collection software platform. Qualtrics is used across many domains in both academia and industry for online surveys and research. While users can manually download survey responses from Qualtrics through a browser, importing this data into R is then cumbersome. The qualtRics R package implements the retrieval of survey data using the Qualtrics API and aims to reduce the pre-processing steps needed in analyzing such surveys. Currently, this package is the only package on CRAN that offers such functionality, and is included in the official Qualtrics API documentation.

Note that your institution must support API access and that it must be enabled for your account. Whoever manages your Qualtrics account can help you with this. Please refer to the Qualtrics documentation to find your API token.

The authors of this package are not affiliated with Qualtrics, and Qualtrics does not offer support for this package. For specific information about the Qualtrics API, you can refer to the official documentation.


This package can be installed from CRAN:


Alternatively, you can install the development version with the remotes package (or alternatively, devtools):


Access your Qualtrics data

Currently, the package contains three core functions:

  1. all_surveys() fetches a list of all surveys that you own or have access to from Qualtrics.
  2. fetch_survey() downloads a survey from Qualtrics and loads it into R.
  3. read_survey() allows you to read CSV files you download manually from Qualtrics.

It also contains helper functions:

  1. qualtrics_api_credentials() stores your API key and base url in environment variables.
  2. survey_questions() retrieves a data frame containing questions and question IDs for a survey.
  3. metadata() retrieves metadata about your survey, such as questions, survey flow, number of responses etc.

Note that you can only export surveys that you own, or to which you have been given administration rights.

Register your Qualtrics credentials

There are two important credentials you need to authenticate with the Qualtrics API. These are your API key and institution-specific base URL. The base URL you pass to the qualtRics package should either look like or like The Qualtrics API documentation explains how you can find your base URL.

You can store your API credentials QUALTRICS_API_KEY and QUALTRICS_BASE_URL in your .Renviron file for repeated use across sessions. The qualtRics package has a function to help with this.


qualtrics_api_credentials(api_key = "<YOUR-QUALTRICS_API_KEY>", 
                          base_url = "<YOUR-QUALTRICS_BASE_URL>",
                          install = TRUE)

After you use this function, reload your environment (readRenviron("~/.Renviron")) so you can use the credentials without restarting R.

A simple Qualtrics workflow

Once your Qualtrics API credentials are stored, you can see what surveys are available to you.

surveys <- all_surveys() 

You can then download the data from any of these individual surveys (for example, perhaps the sixth one) directly into R.

mysurvey <- fetch_survey(surveyID = surveys$id[6], 
                         verbose = TRUE)

See the qualtRics vignette for more details on variable metadata, automatic conversion of variables, retrieving responses between specific dates or for specific survey items, and more.

Related work

  • Jason Bryer wrote an R package to work with the previous version of the Qualtrics API
  • QualtricsTools creates automatic reports in shiny.
  • qsurvey by James Dunham focuses on testing and review of surveys before fielding, and analysis of responses afterward.

Community Guidelines

This project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. Feedback, bug reports (and fixes!), and feature requests are welcome; file issues or seek support here.


You can’t perform that action at this time.