What Pharmacogenetic Testing Costs, and What You Get for the Money
A pharmacogenetic panel costs between about $50 and $2,500 out of pocket, and the price has almost no relationship to how many genes are genotyped. The cheap consumer panels and the expensive clinical ones usually interrogate the same core set: CYP2C19, CYP2D6, CYP2C9, CYP3A5, VKORC1, SLCO1B1, TPMT/NUDT15, DPYD, UGT1A1, HLA-B. What you pay for at the high end is a CLIA report, a pharmacist consult, and a billing department that will fight your insurer. What you pay for at the low end is a CSV of genotypes and nothing else. If you already have whole-genome sequencing, the marginal cost of pharmacogenetic calls is zero, because the genotypes are already in your data and the calling software is open source.
What the price tiers buy
Rough tiers as of now, cash price:
- $50–$150: direct-to-consumer array or small targeted panel. Genotypes a fixed list of SNVs. No CYP2D6 copy number. No report a prescriber will act on.
- $200–$500: the clinical mid-tier. GeneSight advertises that 98% of patients pay $330 or less; university programs like UF Health’s MyRx list $599 for testing plus consultation, $199 for consultation alone. These are real, negotiated cash prices, not list prices.
- $1,000–$2,500: list price on a full clinical panel before any insurance adjustment or patient assistance. Very few people pay this.
The spread exists because pharmacogenetic testing is priced like a clinical service, not like a reagent cost. Genotyping 20 positions on a MassARRAY or TaqMan OpenArray plate costs the lab single-digit dollars in consumables 1. Everything above that is interpretation, CLIA overhead, sales, and the cost of carrying unpaid claims. US spending on genetic testing overall has grown fast while reimbursement policy lags the technology, which keeps list prices high and collection rates low 2.
The sequencing route
If you are going to sequence anyway, do that and derive the pharmacogenetics from it. A 30x whole genome gives you every SNV and indel in the standard panel plus the ones no panel covers, and next-generation sequencing has been the natural substrate for pharmacogenetics for years because it captures rare variants that fixed-content arrays are blind to 3. A typical panel tests 3 to 8 alleles in CYP2C9. Sequencing sees all of them, including the loss-of-function alleles that are common in African and East Asian populations and underrepresented on panels designed against European reference data.
Three caveats before you assume WGS solves everything.
CYP2D6 is hard. The gene sits next to two pseudogenes (CYP2D7, CYP2D8) with high sequence identity, and the clinically relevant variation includes whole-gene deletions, duplications to 4+ copies, and CYP2D6-CYP2D7 hybrid alleles. Short-read aligners mismap across that region. You need a caller built for it: Cyrius (Illumina, works from a 30x WGS BAM/CRAM, reports a diplotype with a confidence filter), Aldy (works on WGS, exome, and targeted panels), or StellarPGx. Run two and compare. Where they disagree, treat the locus as uncalled.
HLA alleles are not SNVs. HLA-B*57:01 and HLA-B*15:02 are the two with the clearest prescribing relevance, and you get them from an HLA typer (OptiType, HLA-LA, or Arcas) run on the reads, not from a VCF. Tag SNPs impute HLA-B*57:01 well and HLA-B*15:02 poorly.
Structural and tandem variation elsewhere. DPYD’s key variant is an intronic splice variant (c.1129-5923C>G, rs75017182) that some exome kits miss entirely, and UGT1A1*28 is a TA repeat in the promoter that short reads genotype unreliably. Check coverage at these coordinates before you trust a “no variant found” result.
Running the calls yourself
The pipeline we would use, given a 30x WGS aligned to GRCh38:
# 1. Normalize and restrict the VCF to PGx positions
python pharmcat_vcf_preprocessor.py \
-vcf sample.g.vcf.gz \
-refFna GRCh38_full_analysis_set.fna \
-o preprocessed/
# 2. CYP2D6 from the BAM, not the VCF
star_caller.py --manifest manifest.txt \
--genome 38 --threads 8 --outDir cyp2d6/ --prefix sample
# 3. Named-allele matching + CPIC recommendations
java -jar pharmcat.jar \
-vcf preprocessed/sample.preprocessed.vcf.bgz \
-po cyp2d6/sample.outside.tsv \
-reporterJson -o pharmcat_out/
PharmCAT gives you three artifacts: a named allele matcher result (diplotypes per gene), a phenotyper result (metabolizer status), and a reporter HTML that maps phenotype to the current CPIC guideline text. The -po flag is how you inject an outside CYP2D6 call. Without it, PharmCAT will report CYP2D6 as unknown, which is correct behavior and better than a wrong call.
Failure modes to watch for. The preprocessor will fail loudly on a VCF that is missing reference calls at PGx positions, because “absent” in a variant-only VCF is ambiguous between homozygous reference and no coverage. Use a gVCF or a joint-called VCF with reference blocks. Check that your VCF’s contig names match the reference FASTA (chr1 vs 1) or nothing will match. And confirm build: a GRCh37 VCF run against GRCh38 positions produces silent garbage, not an error.
Phasing matters for genes where two variants on the same haplotype mean something different than one on each. PharmCAT will report multiple possible diplotypes when phase is unknown rather than picking one. That ambiguity is information. Long reads or read-backed phasing resolve it.
Insurance, plainly
Coverage is inconsistent and gene-specific. Medicare, through the MolDX program, covers single-gene tests with an on-label FDA prescribing implication and covers panels only under narrow local coverage determinations. Commercial plans vary by employer contract within the same insurer. The common CPT codes are 81225 (CYP2C19), 81226 (CYP2D6), 81227 (CYP2C9), 81230/81231 (CYP3A4/CYP3A5), 81355 (VKORC1), 81346 (TPMT), and 81418 for a multigene drug-metabolism panel. Some labs bill proprietary PLA codes instead, which are adjudicated one plan at a time.
Two things predict payment more than anything else: whether a drug in the relevant class has already been prescribed or is being prescribed now, and whether the ordering provider documents that. Prospective, healthy-person panel testing is usually denied as screening. A survey of health systems found reimbursement and patient access to be the dominant barrier to pharmacogenomics implementation, well ahead of technical or interpretive problems 4. Payers have historically been slow to cover sequencing-based tests in general, and the pattern held even as costs fell 5.
Call your plan and ask about the specific CPT code the lab will bill, not “pharmacogenetic testing.” Ask the lab for its cash price and its patient-responsibility cap in writing before the sample goes out.
Is it worth it
The evidence splits by drug. For genes with strong, quantitative effects on a drug with a narrow therapeutic index (DPYD and fluoropyrimidines, TPMT/NUDT15 and thiopurines, HLA-B*57:01 and abacavir), the case is strong and preemptive panel testing looks economically favorable when the cost of a single avoided severe adverse reaction is weighed against test cost across many drug-gene pairs at once 6. A systematic review of pharmacogenetic cost-effectiveness studies found 44% cost-effective and 27% cost-saving, with the rest negative or uncertain, and the variance tracks which drug-gene pair was studied.
For psychiatry, be skeptical of the marketing. Commercial combinatorial antidepressant tests report a proprietary composite score whose algorithm is not public and whose incremental value over CPIC-level CYP2D6/CYP2C19 interpretation has not been established 7. Quality-improvement work in depression care shows implementation effects, which is not the same as a demonstrated outcome benefit from the algorithm itself 8. The underlying CYP2C19 and CYP2D6 metabolizer status is real and well-validated. The score layered on top is the part we would discount.
Genotype does not tell you what to take or at what dose. Metabolizer status interacts with kidney and liver function, drug-drug interactions (a strong CYP2D6 inhibitor makes a normal metabolizer phenotypically poor), age, and adherence 9. Take your diplotypes to a clinical pharmacist or your prescriber. Do not change a medication on your own reading of a report.
Questions people also ask
Are pharmacogenetic tests accurate? Genotyping accuracy for common SNVs is very high, above 99% concordance for well-validated assays. The error comes from incomplete content, not miscalls: a panel that tests 5 CYP2C19 alleles will call you a normal metabolizer if you carry an allele it does not test. CYP2D6 structural variants are the single largest source of discordance between platforms.
How long does pharmacogenetic testing take? Commercial panels turn around in 2 to 15 business days from sample receipt, most often about a week. Buccal swab collection at home adds mail transit. Running PharmCAT on WGS you already own takes under ten minutes on a laptop.
How is pharmacogenomic testing done? A buccal swab or blood draw, DNA extraction, then either targeted genotyping (TaqMan, MassARRAY, array) or sequencing. Targeted platforms interrogate a fixed allele list at low cost per sample 1. Sequencing captures everything in the region, at higher cost and higher analysis burden 3.
Which insurers cover GeneSight? Medicare covers it for certain psychiatric indications under a MolDX determination, and coverage across commercial plans is plan-specific. The lab’s own materials quote a patient-pay cap rather than a list of covered plans, which tells you how variable it is.
Does the $1,000 genome change this? The cost of sequencing fell faster than anyone projected when the target was first set 10, and sequencing a genome now costs less than many single-gene clinical tests are billed at. Pricing for pharmacogenetic testing has not followed, because the price reflects the clinical service around the data.
Oak builds longitudinal molecular profiles of individuals: whole-genome sequencing, RNA sequencing, proteomics, blood biomarkers, and continuous glucose data, integrated into one model of you. Build your profile.
Footnotes
-
Liqian Mo, Xin Luo, Caihua Yang, et al. Current status and prospects of nucleic acid mass spectrometry in clinical pharmacogenomics. Precision Medication, 2024. https://doi.org/10.1016/j.prmedi.2024.10.001 ↩ ↩2
-
Kathryn A. Phillips, Patricia A. Deverka, Gillian W. Hooker, et al. Genetic Test Availability And Spending: Where Are We Now? Where Are We Going?. Health Affairs, 2018. https://doi.org/10.1377/hlthaff.2017.1427 ↩
-
Ute I. Schwarz, Markus Gulilat, Richard B. Kim. The Role of Next-Generation Sequencing in Pharmacogenetics and Pharmacogenomics. Cold Spring Harbor Perspectives in Medicine, 2018. https://doi.org/10.1101/cshperspect.a033027 ↩ ↩2
-
Sara L Rogers, Nicholas J Keeling, Jyothsna Giri, et al. PARC report: A Health-Systems Focus on Reimbursement and Patient Access to Pharmacogenomics Testing. Pharmacogenomics, 2020. https://doi.org/10.2217/pgs-2019-0192 ↩
-
Shraddha Chakradhar. Insurance companies are slow to cover next-generation sequencing. Nature Medicine, 2015. https://doi.org/10.1038/nm0315-204 ↩
-
Catrin O. Plumpton, Munir Pirmohamed, Dyfrig A. Hughes. Cost‐Effectiveness of Panel Tests for Multiple Pharmacogenes Associated With Adverse Drug Reactions: An Evaluation Framework. Clinical Pharmacology & Therapeutics, 2019. https://doi.org/10.1002/cpt.1312 ↩
-
Zane Zeier, Linda L. Carpenter, Ned H. Kalin, et al. Clinical Implementation of Pharmacogenetic Decision Support Tools for Antidepressant Drug Prescribing. American Journal of Psychiatry, 2018. https://doi.org/10.1176/appi.ajp.2018.17111282 ↩
-
Jeremy Tyler Rockwell, Amy Y. Spurlock, Kerri L. Outlaw. Pharmacogenetic Testing in Patients With Depression: A Quality Improvement Project. Journal of the American Psychiatric Nurses Association, 2026. https://doi.org/10.1177/10783903261431278 ↩
-
Munir Pirmohamed. Pharmacogenomics: current status and future perspectives. Nature Reviews Genetics, 2023. https://doi.org/10.1038/s41576-022-00572-8 ↩
-
Simon T Bennett, Colin Barnes, Anthony Cox, et al. Toward the $1000 Human Genome. Pharmacogenomics, 2005. https://doi.org/10.1517/14622416.6.4.373 ↩