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

Collects median gene expression values from the GTEx portal for one or more HGNC gene symbols. Returns a row per tissue with TPM, read count, and sample size.

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

GTEx Gene Expression Scraper

Scrape GTEx gene expression data for any gene symbol across all human tissues. Get median TPM, read counts, and sample sizes per tissue in one flat table. No API key or bioinformatics pipeline required. Export to CSV, JSON, Excel, or XML.

GTEx gene expression data lives behind a web portal that requires manual gene-by-gene lookup and copy-paste. This Actor reads the public GTEx API directly, resolves each HGNC gene symbol you provide to its gencode ID, and collects the median expression values across every tissue site in one run.

You get a row per gene per tissue, ready for differential expression analysis, tissue-specificity screens, or machine learning feature tables.

Who uses itWhat they scrape GTEx for
BioinformaticiansBuild expression matrices across tissues for candidate gene lists without writing API glue code.
Computational biologistsScreen for tissue-specific expression patterns to prioritize genes for functional studies.
Drug discovery researchersCheck where a target gene is expressed in normal human tissues to anticipate on-target toxicity.
Genetics researchersPull expression data for GWAS hits to see which tissues the associated genes are active in.

What it does

This Actor collects median gene expression values from the GTEx portal for one or more gene symbols and returns a row per tissue with TPM, read counts, and sample size.

  • ๐Ÿงฌ Bulk gene lookup: submit a list of gene symbols and get expression across all 54 GTEx tissues in one dataset.
  • ๐Ÿ“Š Median expression values: each record includes median TPM and median read count, not a summary statistic.
  • ๐Ÿงช Sample size per tissue: know how many donors contributed to each expression estimate for statistical confidence.
  • ๐Ÿ“ Flat table output: one row per gene per tissue, ready to load into R, Python, or Excel without reshaping.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with GTEx data

๐Ÿงฌ Build expression matrices for candidate genes.

A bioinformatician submits a list of 200 GWAS candidate genes and gets a matrix of median TPM across 54 tissues to feed into a clustering or network analysis pipeline.

๐Ÿซ Check tissue specificity of a drug target.

A pharmacologist looks up a novel kinase target and sees it is highly expressed in heart tissue, flagging a potential cardiac safety risk before lead optimization.

๐Ÿ“ˆ Compare expression across gene families.

A genomics researcher pulls data for all 48 human nuclear receptor genes and compares expression profiles to find receptors with overlapping tissue distributions.

๐Ÿงช Annotate single-cell clusters with bulk tissue context.

A computational biologist uses GTEx median expression per tissue as a reference to label cell clusters by their tissue of origin in an integrated single-cell atlas.

Why choose this scraper

What you get
No manual clickingStop typing gene symbols one at a time into the GTEx portal and copying tables by hand.
All tissues at onceGet expression across every GTEx tissue site in a single run, not gene by gene.
Clean flat schemaEach row is one gene in one tissue with TPM, read count, and sample size columns.
No API key neededReads the public GTEx API directly. No registration, no token management.

How it compares

No other Store actor targets GTEx the same way, so the honest comparison is with the alternatives teams actually weigh.

GTEx Gene Expression ScraperBuild it in-houseBy hand
SetupRun it now, zero configDays of engineeringNone, but hours per pull
When GTEx changesMaintained for youYou fix itYou re-learn the page
Proxies, retries, anti-botBuilt inYour problemBrowser only
OutputFixed JSON schema, CSV/Excel exportWhatever you buildCopy-paste
CostPay per resultEngineering timeAnalyst hours

Configure the run

Drive the Actor from a list of HGNC gene symbols. Each symbol is resolved to its GTEx gencode ID, then expression is collected for every tissue. Cap the total records with the maximum items limit. The Input tab lists every parameter.

A first run with the defaults:

{
"geneSymbols": [
"BRCA1",
"TP53",
"EGFR"
],
"maxItems": 10
}

A larger pull:

{
"geneSymbols": [
"BRCA1",
"TP53",
"EGFR"
],
"maxItems": 200
}

Pricing

Pay-per-result: $0.005 per result collected. You pay only for the results written to your dataset.

Results collectedApproximate cost
100 results$0.50
1,000 results$5.00
10,000 results$50.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the GTEx Gene Expression Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to GTEx through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/gtex-gene-expression-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results for my gene symbol?

Check that the symbol is a valid HGNC gene symbol and that it exists in the GTEx dataset. Some genes, especially non-coding RNAs or very new gene predictions, may not be present. Try a well-known gene like TP53 to verify the Actor is working.

Why do some tissues have zero expression?

A median TPM of zero means the gene was not detected in more than half of the donor samples for that tissue. This is real biological data, not an error. Check the sample size column to see how many donors were tested.

The run stopped before all my genes were processed.

The maxItems setting caps the total number of records produced. If you have many genes and tissues, increase maxItems. For example, 100 genes across 54 tissues needs at least 5400 as the maxItems value.

I got fewer records than expected for my gene list.

Some gene symbols may not resolve to a GTEx gencode ID. Check the run log for warnings about unresolved symbols. Also confirm that maxItems is set high enough to cover all gene-tissue combinations.

The expression values do not match what I see on the GTEx portal.

The Actor pulls the same median TPM and read count values displayed on the GTEx portal. If you see a discrepancy, confirm you are comparing the same tissue site and that the portal is showing median, not mean, expression.

FAQ

QuestionAnswer
What gene symbols can I use?Use standard HGNC gene symbols like BRCA1, TP53, or EGFR. The Actor resolves each symbol to its GTEx gencode ID internally. If a symbol is not found in the GTEx dataset, that gene is skipped and noted in the log.
Which tissues are included?All tissues available in the GTEx v8 release are included, typically 54 tissue sites across 30 organ systems. Each record names the tissue site and provides the number of donor samples.
What expression values do I get?You get median TPM (transcripts per million) and median read count per tissue, along with the sample size. These are the same values shown on the GTEx portal gene expression page.
Is this the same data as the GTEx portal?Yes. The Actor reads the same public API that powers the GTEx portal gene expression boxplots. You get the identical median values without the manual lookup.
Do I need a GTEx dbGaP approval?No. The Actor uses the public GTEx API that serves summary-level median expression data. Individual-level genotypes or expression data requiring dbGaP access are not available through this endpoint.
How many genes can I query in one run?You can submit as many gene symbols as you need. The maxItems setting caps the total number of records produced, not the number of input genes. Each gene produces one record per tissue, so 10 genes across 54 tissues yields up to 540 records.
What output formats are supported?The dataset can be exported to CSV, JSON, Excel, or XML from the Apify platform. CSV and Excel are common choices for loading into R or Python pandas.
Can I schedule this to run regularly?Yes. You can set a schedule in Apify to re-run the Actor daily or weekly. This is useful if you are tracking expression for a growing gene list or want to detect when GTEx releases updated data.
What happens if a gene symbol is ambiguous?The Actor uses the GTEx gene symbol resolver, which maps each symbol to a single gencode ID based on the current GTEx annotation. If a symbol maps to multiple IDs, the primary match is used.
Does this work with Ensembl IDs or gencode IDs?The input accepts HGNC gene symbols. If you have Ensembl or gencode IDs, convert them to gene symbols first using a tool like biomaRt or the NCBI gene database.

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by The Broad Institute of MIT and Harvard. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.