# ENA: Public Sequencing Data Archive

> Where to find and download public RNA-seq and DNA sequencing data, including what ENA is, how it mirrors SRA and DDBJ, accession structure, and practical download methods.

The **ENA** (European Nucleotide Archive) is a **public sequencing-data repository** operated by EMBL-EBI in Europe. Researchers around the world submit raw reads produced by sequencers, assembled sequences, and experimental descriptions called metadata. Raw reads are commonly provided as FASTQ files, and users can download public `.fastq.gz` files directly by URL.

This reference explains what to find in ENA and how to download it when practising analysis or obtaining reference data.

- Web browser: [www.ebi.ac.uk/ena/browser](https://www.ebi.ac.uk/ena/browser/)
- Operated by EMBL-EBI (European Bioinformatics Institute, United Kingdom)

## Why download from ENA rather than SRA?

The same data exists in all three archives, but **download convenience** differs.

| Archive | Operator | How to obtain raw reads |
| --- | --- | --- |
| **ENA** (Europe) | EMBL-EBI | Use **a `.fastq.gz` URL directly with `curl` or `wget`**, the simplest method |
| SRA (United States) | NCBI | Use dedicated tools (`prefetch` then `fasterq-dump`) to unpack `.sra` files |
| DDBJ (Japan) | National Institute of Genetics | DRA, also mirrored to ENA |

## Are all three mirrored? The INSDC agreement

ENA, SRA, and DDBJ, whose raw-read section is called DRA, are linked by the **INSDC** (International Nucleotide Sequence Database Collaboration), an international agreement that has existed for more than 30 years. Its principle is:

> Public data submitted to any one archive is exchanged daily among all three institutions so that it can be searched and downloaded from each of them.

The practical answer to "Do they hold the same data?" is therefore **yes**. At two levels:

| Level | Degree of mirroring |
| --- | --- |
| **Metadata** (accessions and study/sample information) | **Fully synchronized.** This is why data submitted to DDBJ can be searched and inspected unchanged in Europe's ENA. |
| **Raw-read data itself** | Exchanged among the three institutions and available anywhere, although its storage and delivery *format* differs. |

### Same data, different packaging

The content, the read sequences, is the same, but the file form and access method differ by institution.

- **SRA (NCBI)**: stores its own `.sra` format, which must be converted to FASTQ with dedicated tools
- **ENA (EBI)**: prepares FASTQ in advance and serves it by direct URL, allowing immediate download with `curl`
- **DDBJ**: mirrored through DRA

FASTQ files produced by ENA and converted by SRA may differ slightly in header notation, and newly submitted data may take several days to appear in all three locations.

## Accession identifier structure

Hierarchical IDs organize the data. The third character of the prefix identifies the type, while the first identifies the archive: E for ENA, S for SRA, and D for DDBJ.

| Level | Examples | Meaning |
| --- | --- | --- |
| **Study / Project** | `PRJEB…` `PRJNA…` `PRJDB…` | One research project |
| **Sample** | `SAMEA…` `SAMN…` `SAMD…` | Biological sample |
| **Experiment** | `ERX…` `SRX…` `DRX…` | Library and sequencing conditions |
| **Run** | `ERR…` `SRR…` `DRR…` | Actual read file, the **download unit** |

A **Run** is a collection of reads produced by one run of a sequencing instrument. It is the unit used to download raw reads. Running the same Experiment, with the same settings, several times can produce multiple Runs.

## Finding data with the Portal API

You can insert an accession into the browser URL (`.../ena/browser/view/<accession>`), but the REST API is more convenient for conditional searches and automation.

### Find runs matching conditions with `search`

Example: a list of human, RNA-seq, Illumina, paired-end runs.

```bash
curl -s -G 'https://www.ebi.ac.uk/ena/portal/api/search' \
  --data-urlencode 'result=read_run' \
  --data-urlencode 'query=tax_eq(9606) AND library_strategy="RNA-Seq" AND instrument_platform="ILLUMINA" AND library_layout="PAIRED"' \
  --data-urlencode 'fields=run_accession,fastq_bytes,read_count,fastq_ftp,fastq_md5' \
  --data-urlencode 'format=tsv'
```

- `tax_eq(9606)` means human, using the NCBI taxonomy ID
- Useful fields: `read_count`, `fastq_bytes` for size, `fastq_ftp` for URLs, and `fastq_md5` for integrity
- Complete field list: [returnFields?result=read_run](https://www.ebi.ac.uk/ena/portal/api/returnFields?result=read_run)

### File information for a specific accession with `filereport`

```bash
curl -s -G 'https://www.ebi.ac.uk/ena/portal/api/filereport' \
  --data-urlencode 'accession=DRR024878' \
  --data-urlencode 'result=read_run' \
  --data-urlencode 'fields=fastq_ftp,fastq_md5,fastq_bytes' \
  --data-urlencode 'format=tsv'
```

### Build a curl command yourself

Use the GUI below to select options for both APIs and assemble a `curl` command. Switch between **conditional search (`search`)** and **file information (`filereport`)** with the tabs. Changing filters, fields, or format updates the command in real time. Use the **Copy** button to paste it directly into a terminal.



## Downloading data

### URL structure

An example value returned by `fastq_ftp`:

```text
ftp.sra.ebi.ac.uk/vol1/fastq/DRR024/DRR024878/DRR024878_1.fastq.gz
```

- Add `https://` because the protocol prefix is absent.
- Depending on the number of digits in the accession, the path may contain a zero-padded subdirectory such as `001/`. **Do not assemble the path yourself; use the `fastq_ftp` value unchanged.**

### Paired-end means two files

`_1.fastq.gz`, the forward read, and `_2.fastq.gz`, the reverse read, form a pair. Alignment requires both files from a paired library, so download them together.

```bash
curl -sS -O https://ftp.sra.ebi.ac.uk/vol1/fastq/DRR024/DRR024878/DRR024878_1.fastq.gz
curl -sS -O https://ftp.sra.ebi.ac.uk/vol1/fastq/DRR024/DRR024878/DRR024878_2.fastq.gz
```

- `-O` saves the file under the name in the URL; `-sS` hides the progress bar but displays errors
- Resume a download with `curl -C - -O <url>`
- macOS includes `curl`, but not `wget`, by default

### Use Aspera for large data

For tens or hundreds of gigabytes, ENA provides **Aspera (fasp)**, which is faster than `curl` (`era-fasp@fasp.sra.ebi.ac.uk:...`). It is unnecessary for small datasets.

### Required: verify integrity with md5

Compare each downloaded file against the `fastq_md5` value to make sure it is intact.

```bash
md5 DRR024878_1.fastq.gz     # macOS  (Linux: md5sum)
```

## Restricted access: controlled data

All of this mirroring and public downloading applies **only to public data**. Human data with consent restrictions, such as patient genomes, goes through controlled-access systems such as **EGA in Europe** or **dbGaP in the United States**, not the public INSDC archives. Those controlled repositories do not mirror one another.

In a controlled-access study, you may therefore be unable to download raw reads directly and may have to use only de-identified summaries or expression matrices published separately by the researchers.

## Summary cheat sheet

```text
Find:      filereport API → obtain fastq_ftp and fastq_md5
Download:  curl -O <https://…fastq.gz>   (for paired data, both _1 and _2)
Verify:    compare md5
```

See the [Data Formats Reference](/en/reference/data-formats/) for related formats.