CMS Nursing Home Ratings Scraper avatar

CMS Nursing Home Ratings Scraper

Pricing

from $4.00 / 1,000 nursing home returneds

Go to Apify Store
CMS Nursing Home Ratings Scraper

CMS Nursing Home Ratings Scraper

Search CMS Care Compare nursing-home records by location, ratings, ownership, beds, staffing, quality measures, and special-focus status. Returns one current Medicare-certified facility per result. For US nursing-home research, not patient data. $0.005/result + $0.00625 start.

Pricing

from $4.00 / 1,000 nursing home returneds

Rating

0.0

(0)

Developer

Muhammad Afzal

Muhammad Afzal

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

16 days ago

Last modified

Features

Limited permissions

Share

Search official CMS Care Compare nursing-home data without manually downloading and filtering the national CSV. The actor queries the current Provider Information dataset published by the Centers for Medicare & Medicaid Services (CMS) through the CMS Provider Data Catalog API, then returns one structured record for every matching active Medicare-certified nursing home. The default input (state: "CA", 50 results) returns the 50 highest-rated California facilities.

Use it for facility comparison, market research, referral-network analysis, senior-care research, and data enrichment. It is not a source for patient-level data, assisted-living communities, hospital quality data, or consumer review-site ratings.

What it returns

Each result contains the CMS Certification Number (CCN), facility identity and contact details, ownership type, certified beds, overall/health-inspection/staffing/quality-measure Five-Star Ratings, special-focus status, selected inspection and fine metrics, staffing hours, coordinates, CMS processing date, and source provenance.

Ratings are CMS Five-Star Rating System values. A missing rating remains null; the actor never converts an unrated facility to zero.

Inputs

All filters are optional and combine with AND logic.

InputExamplePurpose
state"CA"Limit to a two-letter state or territory code.
city"Los Angeles"Case-insensitive city/town match.
providerNameQuery"Manor"Case-insensitive facility-name match.
ccn"055123"Exact CMS Certification Number.
minOverallRating4Include facilities rated at least 4 overall.
minHealthInspectionRating4Include facilities rated at least 4 for health inspections.
minStaffingRating4Include facilities rated at least 4 for staffing.
minQualityMeasureRating4Include facilities rated at least 4 for quality measures.
ownershipTypes["Non profit - Corporation"]Include exact CMS ownership labels.
minCertifiedBeds / maxCertifiedBeds100 / 250Restrict facility size.
maxResults100Cap output between 1 and 10,000 records.

Example input

{
"state": "CA",
"minOverallRating": 4,
"minStaffingRating": 4,
"minCertifiedBeds": 100,
"maxResults": 100
}

Example result

{
"ccn": "055123",
"providerName": "EXAMPLE NURSING CENTER",
"city": "LOS ANGELES",
"state": "CA",
"overallRating": 5,
"healthInspectionRating": 5,
"staffingRating": 4,
"qualityMeasureRating": 5,
"certifiedBeds": 120,
"sourceDatasetId": "4pq5-n9py",
"sourceUrl": "https://data.cms.gov/.../NH_ProviderInfo_*.csv",
"retrievedAt": "2026-07-22T12:00:00.000Z"
}

Data source and limitations

The actor uses the public CMS Provider Data Catalog's Provider Information dataset, the dataset used by Medicare.gov Care Compare. CMS updates this source periodically; the actor reads the current release at run time through the CMS Provider Data Catalog API, rather than pinning a stale download URL, and records that release's official download URL in sourceUrl. CMS describes the dataset as general information on currently active nursing homes, including the data used in its Five-Star Rating System.

The output reflects the CMS publication at retrieval time and should be verified against CMS for high-stakes care decisions. It does not provide medical advice or a recommendation of a facility.

Pricing

This Actor uses pay-per-event pricing. Apify platform usage is included; no separate platform-usage fee is passed to users. Only facility records saved to the dataset are charged; a run with no matching facility, or a failed run, has no result charges.

Apify tierPer nursing home (USD)Per 1,000 nursing homes (USD)Start fee per run (USD)
FREE$0.005001$5.001$0.006251
BRONZE$0.004875$4.875$0.006094
SILVER$0.00475$4.75$0.005938
GOLD / PLATINUM / DIAMOND$0.004$4.00$0.005

The start fee is charged once per started GB of run memory; the default 512 MB run pays it once. At FREE-tier prices, the default 50-facility run costs about $0.256. The authoritative prices are shown in the Actor's Apify pricing settings.

Use cases

  • Schedule repeatable collection and export results to downstream workflows.
  • Add a repeatable structured-data step to applications, agents, and automation pipelines.
  • Run a one-off research job and export the structured result as JSON, CSV, Excel, XML, or RSS from Apify.
  • Schedule the same input to monitor changes over time and send completed datasets to a webhook or integration.
  • Feed schema-shaped records into a database, spreadsheet, BI tool, or AI workflow with the source URL retained for verification.

Output example

{
"ccn": "Example CMS Certification Number",
"providerName": "Example Provider name",
"address": "Example Address",
"city": "Example City",
"state": "Example State",
"zipCode": "Example ZIP code",
"county": "Example County",
"phone": "Example Phone",
"ownershipType": "Example Ownership type",
"certifiedBeds": 1,
"averageResidentsPerDay": 1,
"overallRating": 1
}

The exact fields depend on the selected input and what the public source exposes. Use the dataset schema as the machine-readable contract and retain source URLs for verification.

Run CMS Nursing Home Ratings Scraper with the Apify API

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('muhammadafzal/cms-nursing-home-ratings-scraper').call({
"state": "CA",
"maxResults": 50
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

You can also run the Actor from Apify Console, schedules, webhooks, the REST API, Make, Zapier, n8n, or the hosted Apify MCP server.

FAQ

Is this official CMS data?

Yes. Every record comes from the CMS Provider Information dataset (4pq5-n9py), the nursing-home data behind Medicare.gov Care Compare.

How current is the data?

The run reads the release CMS is publishing at that moment. Each record carries cmsProcessingDate, sourceDatasetModified and sourceDatasetReleased, so you can see which release it came from.

Can I search the whole country?

Yes. Leave state blank and add rating, ownership or bed filters. Up to 10,000 facilities can be returned in one run.

What happens when nothing matches?

The run finishes with zero results, a status message saying no facility matched, and no result charges.

Does it include assisted living or patient data?

No. It covers Medicare-certified nursing homes only and contains no patient-level information.

Responsible use

Use this Actor only for data you are authorized to access. Follow the target website's terms, robots and access policies, and applicable privacy, database, copyright, anti-spam, and data-protection laws. Do not use it to bypass authentication or other access controls, collect private data, harass people, or make high-impact decisions without independent verification.

Support

When reporting a problem, include the Actor run ID, a redacted input, the expected result, and a small public example URL when applicable. Do not post API tokens, cookies, credentials, or personal data in an issue.

Last verified: 2026-10-27