Skip to content
FonteumThe Graph
DataResearchCare CompareThe DifferAttestAPI
See the proof
  • Data
  • Research
  • Care Compare
  • The Differ
  • Attest
  • API
See the proof
Fonteum · Data · CMS PECOS
CMS-PECOS
Dataset confidence
95%

CMS PECOS Medicare Enrollment Data

Fonteum ingests the CMS PECOS Medicare Fee-For-Service Public Provider Enrollment file — the monthly extract of Medicare-enrolled providers — and attaches per-field provenance, NPI cross-reference, and FHIR R4 bulk export. Credentialing platforms and health plan compliance teams use this layer to confirm Medicare enrollment status without rebuilding the monthly parse-and-store pipeline.

See the Audit Pack →Talk to a data engineer →

Medicare enrollment by provider type

Distribution of Medicare-enrolled providers across CMS-assigned provider type categories. Internal medicine and family practice practitioners make up the plurality of the Medicare enrollment roster — the pattern matters for network adequacy analysis and specialty-specific enrollment screening.

Top Medicare provider types by enrollment count — CMS PECOS PPEF
Top Medicare provider types by enrollment count — CMS PECOS PPEFNURSE PRACTITIONER224PHYSICIAN ASSISTANT128PART B SUPPLIER - CLIN…110ORDER AND REFERRING ON…81PHYSICAL THERAPIST IN …78MENTAL HEALTH COUNSELOR38ORDER AND REFERRING ON…32CLINICAL SOCIAL WORKER30OCCUPATIONAL THERAPIST…25ORDER AND REFERRING ON…17CERTIFIED REGISTERED N…16ORDER AND REFERRING ON…15Enrolled providers
Source: CMS Medicare Fee-For-Service Public Provider Enrollment (PECOS PPEF), Fonteum ingest. methodology_version: pecos-or/v1. U.S. Government Works.
Methodology: COUNT(*) GROUP BY provider_type_desc, ordered descending. Top 12 displayed. Partial-type labels trimmed for readability.

What CMS PECOS PPEF contains

The Medicare Fee-For-Service Public Provider Enrollment file (PPEF) is CMS's monthly public extract from PECOS — the internal Provider Enrollment, Chain, and Ownership System. The PPEF contains the non-confidential fields that CMS has authorized for public release: the NPI, a CMS-assigned enrollment ID, the provider type description used for Medicare billing classification, and the enrollment state (the state where the provider's Medicare enrollment is filed).

The file does not include billing volumes, claim history, quality measures, group enrollment structures, or the full internal PECOS record. Fonteum ingests the PPEF monthly, assigns a snapshot date and SHA-256 source hash, and adds: NPI cross-reference to the NPPES provider graph, enrollment state geography, and a boolean flag (cms_pecos_enrollment_record) that surfaces on every provider profile with the fourteen-field source attribution.

What Fonteum adds to the raw source

  • NPI cross-reference — enrollment records are linked to the NPPES provider graph on NPI, enabling join queries across the full provider data graph (NPPES + PECOS + OIG LEIE + Care Compare).
  • Provider type vs. NPPES taxonomy comparison— flags NPIs where the CMS enrollment type and the self-reported NPPES taxonomy diverge (e.g., enrolled as "Internal Medicine" billing under "Dermatology" taxonomy).
  • Fourteen-field source attribution on every enrollment record: source, source_url, dataset_id, snapshot, methodology, last_checked, confidence, availability, pipeline_version, DOI, license, coverage_start, coverage_end, SLSA_url.
  • FHIR R4 Practitioner output — enrollment status surfaces as an identifier element on Practitioner resources via the /api/fhir/Practitioner endpoint with the cms-pecos-or methodology tag.
  • Monthly diff feed — new enrollments, deactivations, and provider type changes between consecutive snapshots, enabling downstream systems to process only changed records.

Who uses PECOS enrollment data

Credentialing management platforms

Medicare enrollment confirmation is a mandatory primary-source credentialing check. Fonteum's NPI-keyed API returns enrollment status, provider type, and enrollment state with source traceability — eliminating the monthly PPEF parse from the credentialing pipeline.

Health plan network compliance

CMS requires payers to maintain provider directories with Medicare enrollment status. Fonteum's enrollment layer feeds directory updates monthly, flags provider type mismatches against the plan's taxonomy, and logs each check with a timestamp for CMS audit documentation.

Provider analytics and market research

The PECOS provider type distribution is the cleanest signal for specialty mix by geography at the Medicare billing level. Fonteum's enrollment layer, joined to NPPES and Care Compare, supports network adequacy modeling, specialty shortage analysis, and payer mix research across 50+ CMS provider type categories.

Frequently asked questions

What is CMS PECOS and what does the public enrollment file contain?
PECOS — the Provider Enrollment, Chain, and Ownership System — is CMS's database of Medicare-enrolled providers. The public extract (PPEF, Medicare Fee-For-Service Public Provider Enrollment) is a monthly release of the non-confidential subset: NPI, enrollment ID, CMS provider type description, and enrollment state. It confirms that a provider holds an active Medicare billing relationship at the time of the extract. It does not include billing volumes, quality measures, or the full internal PECOS record — those remain confidential.
How does PECOS provider type differ from NPPES taxonomy?
NPPES taxonomy (e.g., 'Dermatology', 'Chiropractic') is self-reported by the provider and reflects their self-designated specialty. CMS provider type (e.g., 'PRACTITIONER - DERMATOLOGY', 'CHIROPRACTIC PRACTITIONER') is assigned by CMS at enrollment and reflects the specialty under which the provider bills Medicare. The same NPI may have a different NPPES taxonomy and CMS provider type — Fonteum surfaces both and flags discrepancies as a data-quality signal in the risk layer.
Can I use PECOS data to confirm Medicare enrollment status for a provider?
Yes. Fonteum's PECOS layer returns a boolean enrollment flag (cms_pecos_enrollment_record) and the enrollment state for any NPI in the extract. An NPI present in the monthly PPEF release has confirmed Medicare FFS enrollment at the time of that snapshot. An NPI absent from the extract may be enrolled under a group or may not be Medicare-enrolled — Fonteum distinguishes these states explicitly in the provenance rail rather than treating absence as non-enrollment.
How often does Fonteum refresh PECOS data?
CMS publishes the PECOS PPEF extract monthly. Fonteum ingests it within 24 hours of each release, assigns a snapshot date and source-file SHA-256 hash, and updates the pecos_providers table. The API reflects the most recent ingested snapshot; the prior snapshot is retained in the ingestion_runs audit log for diff queries.
Is PECOS enrollment the same as Medicare acceptance or credentialing approval?
No — and Fonteum makes this distinction explicit in every record. Enrollment confirms the provider has completed the Medicare enrollment process and holds a valid billing relationship. It is not a quality endorsement, does not confirm the provider is accepting new Medicare patients, and is not equivalent to hospital credentialing or state licensure. Fonteum's display copy uses 'Medicare enrollment record found' framing; 'Medicare-accepted', 'Medicare-approved', and 'Medicare-certified' are not used.

Access the PECOS enrollment layer

The Audit Pack bundles PECOS enrollment status with NPPES, OIG LEIE exclusions, and Care Compare quality data in a single signed export. For API integration and custom specialty or state filters, contact the data engineering team.

Download the Audit Pack →Data Platform overview →

Compliance posture

Methodology · Corrections log · Editorial policy

Fonteum
Products
The DifferAttestAPIFHIR API
Data
Care CompareResearchData catalogSources
Company
AboutPressEditorial policyCorrections
Legal
Privacy policyTerms of serviceMedical disclaimer

Reviewed by Jennifer Montecillo, MD, medical reviewer. Non-practicing medical reviewer.

© 2026 Fonteum, Inc. All rights reserved.

The U.S. healthcare graph AI can cite — every fact carries its source.

Request access→