GTEx Gene Expression Scraper
Pricing
from $3.00 / 1,000 results
GTEx Gene Expression Scraper
Profile any gene across human tissues with the GTEx Portal. Resolve a symbol like BRCA1, TP53, or EGFR to its gencode ID, then pull median expression for all 54 tissues with tissue name, median TPM, UBERON ontology ID, and dataset release. Great for target research and expression analysis.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Share

🧬 GTEx Gene Expression Scraper
🚀 Turn any gene symbol into a full tissue expression profile. Resolve BRCA1, TP53, or EGFR to its GTEx gencode ID and pull median expression across all 54 human tissues, each as one clean record.
🕒 Last updated: 2026-06-05 · 📊 13 fields per record · keyless public API · 54 GTEx tissues per gene
GTEx (the Genotype-Tissue Expression project) is a reference resource that measures gene expression across dozens of human tissues from hundreds of donors. This Actor queries the GTEx Portal API, resolves each gene symbol to the gencode ID used by the current expression release, and returns one record per tissue with the median expression value.
Coverage spans every tissue site detail in the GTEx v10 release, from adipose and artery to brain subregions, whole blood, and reproductive tissues. You can look up a single gene or paste a batch of symbols, and each gene expands into its full tissue profile so you can compare expression side by side.
| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Genomics and biology researchers | Build a tissue expression table for a gene panel |
| Bioinformaticians and data scientists | Map gene symbols to gencode IDs and median TPM |
| Drug discovery and target teams | Check where a candidate target is expressed |
| Educators and students | Illustrate tissue-specific expression patterns |
📋 What the GTEx Gene Expression Scraper does
- Resolves gene symbols (for example BRCA1, TP53, EGFR) to the GTEx gencode ID for the current release.
- Fetches median gene expression for every GTEx tissue in one pass.
- Returns one record per gene and tissue, with median value and unit.
- Carries the GTEx tissue ontology ID and dataset version on every row.
- Handles a batch of gene symbols in a single run.
🎬 Full Demo (🚧 Coming soon)
⚙️ Input
| Field | Type | Required | Description |
|---|---|---|---|
geneSymbols | array | yes | One or more HGNC gene symbols to resolve and profile. |
maxItems | integer | no | Cap on how many records are produced. Free plan is limited to 10. |
Provide at least one gene symbol. Each gene produces one record per GTEx tissue.
{"geneSymbols": ["BRCA1", "TP53", "EGFR"],"maxItems": 10}
{"geneSymbols": ["TP53"],"maxItems": 54}
⚠️ Good to Know: Symbols are resolved against the gencode version that matches the GTEx expression release, so the gencode ID returned may differ from a generic Ensembl lookup. A symbol that GTEx does not carry is reported as an error row rather than a faked record. Median values are tissue medians in TPM as published by GTEx.
📊 Output
Each record is one gene measured in one tissue.
| 🏷 Field | Description |
|---|---|
🧬 geneSymbol | HGNC gene symbol |
🆔 gencodeId | GTEx gencode ID (release matched) |
🔢 entrezGeneId | NCBI Entrez gene ID |
🧫 geneType | Gene biotype, for example protein coding |
📍 chromosome | Chromosome of the gene |
🩻 tissueSiteDetailId | GTEx tissue site detail ID |
🧭 tissue | Human readable tissue name |
📊 median | Median expression value in the tissue |
📐 unit | Expression unit, TPM |
🔖 ontologyId | UBERON ontology ID for the tissue |
🗂 datasetId | GTEx dataset release, for example gtex_v10 |
🔗 url | GTEx Portal gene page |
🕒 scrapedAt | Timestamp of collection |
❌ error | Error message, null on success |
Real sample records from a live run:
{"geneSymbol": "BRCA1","gencodeId": "ENSG00000012048.23","entrezGeneId": 672,"geneType": "protein coding","chromosome": "chr17","tissueSiteDetailId": "Adipose_Subcutaneous","tissue": "Adipose Subcutaneous","median": 1.44629,"unit": "TPM","ontologyId": "UBERON:0002190","datasetId": "gtex_v10","url": "https://gtexportal.org/home/gene/BRCA1","scrapedAt": "2026-06-05T17:41:20.517Z","error": null}
{"geneSymbol": "BRCA1","gencodeId": "ENSG00000012048.23","entrezGeneId": 672,"geneType": "protein coding","chromosome": "chr17","tissueSiteDetailId": "Adipose_Visceral_Omentum","tissue": "Adipose Visceral Omentum","median": 1.09296,"unit": "TPM","ontologyId": "UBERON:0010414","datasetId": "gtex_v10","url": "https://gtexportal.org/home/gene/BRCA1","scrapedAt": "2026-06-05T17:41:20.595Z","error": null}
{"geneSymbol": "BRCA1","gencodeId": "ENSG00000012048.23","entrezGeneId": 672,"geneType": "protein coding","chromosome": "chr17","tissueSiteDetailId": "Adrenal_Gland","tissue": "Adrenal Gland","median": 0.903838,"unit": "TPM","ontologyId": "UBERON:0002369","datasetId": "gtex_v10","url": "https://gtexportal.org/home/gene/BRCA1","scrapedAt": "2026-06-05T17:41:20.627Z","error": null}
✨ Why choose this Actor
- One tidy row per tissue instead of a nested expression payload.
- Symbols are matched to the gencode ID that the expression release actually uses.
- Carries ontology IDs so you can join to UBERON and other tissue vocabularies.
- Keyless public source, so no account or token juggling on the source side.
- Null is honest, never invented, so your downstream joins stay clean.
📈 How it compares to alternatives
| Approach | Coverage | Tissue mapping | Setup |
|---|---|---|---|
| This Actor | All GTEx tissues per gene | Tissue ID, name, and UBERON ontology | Paste symbols and run |
| Raw GTEx API | Available but needs ID resolution first | Tissue ID only | Write your own resolver |
| Manual portal lookup | One gene at a time | Read off the chart | Slow and manual |
🚀 How to use
- Sign up for a free Apify account using this link.
- Open the GTEx Gene Expression Scraper.
- Enter one or more gene symbols in
geneSymbols. - Set
maxItemsif you want to cap the run, then start the Actor. - Collect your results from the dataset once the run finishes.
💼 Business use cases
Drug target research
| Goal | How this helps |
|---|---|
| Check target tissue selectivity | Compare median expression across all tissues for a gene |
| Flag off-target tissues | Spot tissues where a target is highly expressed |
Bioinformatics reference data
| Goal | How this helps |
|---|---|
| Build an expression matrix | Pull gene by tissue medians for a panel |
| Standardize tissue labels | Use the UBERON ontology IDs to join datasets |
Diagnostics and biomarker work
| Goal | How this helps |
|---|---|
| Profile candidate markers | Read tissue specific expression at a glance |
| Compare gene families | Run a batch of related symbols together |
Education and training
| Goal | How this helps |
|---|---|
| Teach expression concepts | Show how one gene varies across tissues |
| Seed classroom datasets | Generate clean tables for exercises |
🔌 Automating GTEx Gene Expression Scraper
Connect runs to the tools your team already uses:
- Make and Zapier to trigger runs and route records into other apps.
- Slack to post a summary when a run finishes.
- Airbyte to load results into a warehouse.
- GitHub Actions to schedule recurring pulls.
- Google Drive to archive each run output for your team.
🌟 Beyond business use cases
- Research: assemble a tissue expression table for a literature review.
- Personal: explore where a gene you read about is active in the body.
- Non-profit: support patient education materials with reference expression facts.
- Experimentation: prototype a tool that ranks tissues by expression for any gene.
🤖 Ask an AI assistant
Paste your results into ChatGPT, Claude, Perplexity, or Copilot and ask it to rank tissues by expression, group genes by pattern, or summarize where a target is active.
❓ Frequently Asked Questions
Is the GTEx Portal free to query? Yes, the GTEx Portal API is a keyless public resource. This Actor adds symbol resolution and clean per tissue output on top.
What can I put in the gene list? Standard HGNC gene symbols such as BRCA1, TP53, or EGFR. Each symbol is resolved and expanded into its tissue profile.
How many records does one gene produce? One record per GTEx tissue. In the current release that is 54 tissues per gene.
Why does the gencode ID differ from other databases? GTEx expression is keyed to a specific gencode version. The Actor resolves symbols against that version so the ID matches the expression data.
What does median mean here? It is the median expression across donor samples for that gene in that tissue, in TPM, as published by GTEx.
Why is a record sometimes an error row? If a symbol is not carried by GTEx or has no expression data, the Actor returns an error row instead of inventing values.
Can I run many genes at once? Yes, paste a batch of symbols and each one expands into its own tissue profile in the same run.
What is the ontology ID for? It is the UBERON tissue identifier, useful for joining GTEx tissues to other ontologies and datasets.
Which release does the data come from?
The dataset version is on every row in the datasetId field, for example gtex_v10.
How many records can I get? Free plan runs are limited to 10. Paid plans can collect up to 1,000,000.
🔌 Integrate with any app
Every run writes to a structured dataset you can pull through the Apify API or connect to your stack with the integrations above.
🔗 Recommended Actors
- MyChem.info Drug Annotation Scraper for curated drug and compound data.
- Reactome Pathways Scraper for biological pathway data.
- Orphanet Rare Diseases Scraper for rare disease reference data.
💡 Pro Tip: browse the complete ParseForge collection.
🆘 Need Help? Open our contact form
⚠️ Disclaimer: independent tool, not affiliated with GTEx or the GTEx Portal. Only publicly available data collected.
