GTEx Gene Expression Scraper avatar

GTEx Gene Expression Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
GTEx Gene Expression Scraper

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

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

ParseForge Banner

🧬 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 researchersBuild a tissue expression table for a gene panel
Bioinformaticians and data scientistsMap gene symbols to gencode IDs and median TPM
Drug discovery and target teamsCheck where a candidate target is expressed
Educators and studentsIllustrate 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

FieldTypeRequiredDescription
geneSymbolsarrayyesOne or more HGNC gene symbols to resolve and profile.
maxItemsintegernoCap 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.

🏷 FieldDescription
🧬 geneSymbolHGNC gene symbol
🆔 gencodeIdGTEx gencode ID (release matched)
🔢 entrezGeneIdNCBI Entrez gene ID
🧫 geneTypeGene biotype, for example protein coding
📍 chromosomeChromosome of the gene
🩻 tissueSiteDetailIdGTEx tissue site detail ID
🧭 tissueHuman readable tissue name
📊 medianMedian expression value in the tissue
📐 unitExpression unit, TPM
🔖 ontologyIdUBERON ontology ID for the tissue
🗂 datasetIdGTEx dataset release, for example gtex_v10
🔗 urlGTEx Portal gene page
🕒 scrapedAtTimestamp of collection
errorError 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

ApproachCoverageTissue mappingSetup
This ActorAll GTEx tissues per geneTissue ID, name, and UBERON ontologyPaste symbols and run
Raw GTEx APIAvailable but needs ID resolution firstTissue ID onlyWrite your own resolver
Manual portal lookupOne gene at a timeRead off the chartSlow and manual

🚀 How to use

  1. Sign up for a free Apify account using this link.
  2. Open the GTEx Gene Expression Scraper.
  3. Enter one or more gene symbols in geneSymbols.
  4. Set maxItems if you want to cap the run, then start the Actor.
  5. Collect your results from the dataset once the run finishes.

💼 Business use cases

Drug target research

GoalHow this helps
Check target tissue selectivityCompare median expression across all tissues for a gene
Flag off-target tissuesSpot tissues where a target is highly expressed

Bioinformatics reference data

GoalHow this helps
Build an expression matrixPull gene by tissue medians for a panel
Standardize tissue labelsUse the UBERON ontology IDs to join datasets

Diagnostics and biomarker work

GoalHow this helps
Profile candidate markersRead tissue specific expression at a glance
Compare gene familiesRun a batch of related symbols together

Education and training

GoalHow this helps
Teach expression conceptsShow how one gene varies across tissues
Seed classroom datasetsGenerate 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.

💡 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.