Clinical trials analyses: ctrdata, a tool for leveraging register data


Our package ctrdata is continually developed and offered for the R system since 2015. It facilitates investigating and understanding trends in design and conduct of trials, their availability for participants and using their protocols and results for research and meta-analyses. The package can be used with information and documents available in the

Its features include,

  • Protocol- and results-related trial information is easily downloaded, including any trial documents available in registers.
  • Information is stored as JSON in a document-centric database (DuckDB, PostgreSQL, RSQLite or MongoDB), for fast offline access.
  • Find active substance synonyms, identify unique (de-duplicated) records across registers, merge and recode fields, easily access deeply-nested fields


Package ctrdata is on CRAN: Within R, package ctrdata can be installed with: install.packages("ctrdata")


Start here to find the Reference documentation and several Articles with detailed trial analysis:


The preferred way to flag issues is via Alternatively, use the comments form at the bottom of this page.


  • Version 1.18.0 of package ctrdata can retrieve historic versions of studies as structured data from CTGOV2 (example), published on 2024-05-13.
  • By November 2023, ctrdata was freed from all dependencies on command line tools of the operating system.
  • The European Union's new Clinical Trials Information System (CTIS) is supported since March 2023.
  • Since 2019, ctrdata supports several databases (through package nodbi, now maintained by the same author).
  • Various refactoring efforts, such as factoring out functionality, make downloading more robust, handle nested information, generate data frames.
  • Results from the EU Clinical Trials Register are supported and imported since 2017 (included from ClinicalTrials.Gov since the beginning).
  • On 15 September 2015, package ctrdata was first published on CRAN.


When using package ctrdata, the registers’ terms and conditions need to be respected and are shown with ctrOpenSearchPagesInBrowser(copyright = TRUE).

Please cite package ctrdata in any publication as: “Ralf Herold (2024). ctrdata: Retrieve and Analyze Clinical Trials in Public Registers. R package version 1.18.0,”.


Package ctrdata has been used for unpublished work and for:

Code example

This covers how to obtain information of trials of interest from all supported registers, for plotting their start and completion over time. For more sophisticated examples, see the Articles under Documentation above.

Graph example

This example shows the plot resulting from the script above.

Data model used with ctrdata

Package ctrdata uses the data models that are implicit in data retrieved from the different registers. The approach is further explained here, together with the reasons for this choice. A possible future development is to provide a mapping to a canonical data model, which however does not exist at the moment and will require an international approach and alliance.

Here is the model of data from CTIS for a given trial, as an example of how ctrdata downloads, transforms and stores information from registers:

Leave a Reply

Your email address will not be published. Required fields are marked *