Show HN: NPIScan search 9M U.S. healthcare providers from the NPI registry (npiscan.com)

2 points by bas_sen ↗ HN
I’ve been exploring the NPPES dataset, the federal registry that assigns NPI numbers to every healthcare provider in the U.S. It currently has about 9 million records and grows by ~30k per month, but accessing it usually means downloading multi-gigabyte CSVs or using the CMS lookup that returns one provider at a time.

I built NPIScan to make the dataset browsable. You can search by name, NPI, specialty, or location and drill down from state → city → ZIP code. Each provider has a profile with credentials, practice locations, taxonomy codes, and digital health endpoints.

A few interesting patterns from the data:

- 2025 had ~631k new NPI registrations, the largest jump on record

- Behavior Technicians grew to ~526k providers and are now among the largest specialties

- California alone has ~1.1M providers (~12% of the country)

- Only ~0.5% of providers have registered digital health endpoints

Tech stack: Next.js, PostgreSQL, Meilisearch, Redis. The main challenge was making 9M records feel fast to browse. I solved it with denormalized listing tables, Meilisearch full-text search, and Redis caching for aggregated queries. Most pages respond in <40ms after cache warmup.

Curious to hear feedback from anyone working with healthcare data.

0 comments

[ 2.6 ms ] story [ 8.1 ms ] thread

No comments yet.