Getting Started
What Qope IsYour First 15 MinutesInterface TourPlans and Access
Drug Intelligence
Drug ProfilePatent CliffShortages TrackerInsightsTerritory Brief
Access & Organizations
MapSafety-Net IntelligenceEHR Vendor Intelligence
Workspace
Lead ListsRadarPins and Saved Views
Databases
Working with TablesRecord PagesExportsDataset Catalog
Account
Plans and BillingUsage and LimitsTeams and MembersProfile and Security
Data & Methodology
SourcesFreshnessData CaveatsGlossary
Support
FAQTroubleshooting
Open the app
Documentation/Data & Methodology/Data Caveats

Data Caveats

The known traps in the underlying registries, why they exist, and how Qope handles each one.

These are real limitations of the upstream data, not bugs in Qope. Each is surfaced in the interface, but they are collected here so you can check a number before defending it.

Comma-joined values cannot be filtered

Several sources put multiple values in one field, separated by commas -- a shortage record tagged with three therapeutic categories, for example. The filtering layer splits filter values on commas, so a value that itself contains a comma can never match.

Effect: a dropdown can offer a value that returns zero rows.

How Qope handles it: where a value is known to be unfilterable, the "Open in full table" button is replaced with a greyed Not filterable in full table chip, and the tooltip explains that filtering would return a different count from the view you are looking at.

Categorical values are uppercased

The intelligence backend returns categorical values in upper case. A comparison against a mixed-case literal such as Yes silently returns nothing.

Effect: if you build a filter URL by hand, match the case the API returns.

providers and provsummary use different specialty vocabularies

The NPPES registry and the Medicare Part D prescriber file describe specialties with different strings -- CHIROPRACTOR in one, CHIROPRACTIC in the other, and so on across many specialties.

Effect: a specialty value carried from one table to the other returns zero rows with no error.

How Qope handles it: every specialty picker loads its options from the dataset it will actually query. Do not hand-edit a specialty value between pages.

Most recall rows carry no openFDA annotation

Roughly 82 percent of FDA enforcement rows have no openFDA annotation block. A name-based filter therefore looks exhaustive but silently misses the large majority of rows.

How Qope handles it: the recall scan combines exact-name filters with a bounded text scan, and folds biosimilar suffixes back to the originator molecule, so a molecule-level recall count is not built on the annotated rows alone.

The FDA shortage list mixes notices with shortages

Records with status TO BE DISCONTINUED are 506C discontinuation notices, not shortages. At the time this was investigated they were the majority of grouped rows.

How Qope handles it: notices are counted and displayed separately everywhere, and are excluded from the Landscape and Manufacturers analyses. Availability detail is present on current rows only.

Shortage duration cannot be computed from resolved rows

Because the list is a live snapshot, very few resolved rows remain at any time. A median over them would not be meaningful.

How Qope handles it: median shortage age is computed over open shortages only, and labelled as such.

The patent cliff to Medicare join is thin

The Orange Book identifies products by ingredient and applicant. The Medicare prescribing files identify them by brand and generic strings, and offer no brand-name filter. Only a minority of cliff brands can therefore be matched to Medicare dollars.

How Qope handles it: unmatched rows show --, never zero, and the Opportunities ranking places measured exposure ahead of estimated exposure.

Combination products resolve to nothing rather than to a component

Filtering a multi-ingredient product by name would silently match one component and return a number that looks right and is wrong.

How Qope handles it: combination products show no supplier tier and no demand count, with a tooltip stating why.

Supplier counts can be floors

When an Orange Book listing is longer than the paging window, the count is reported as a floor and prefixed with >=.

EHR linkage is per module, not per EHR

One row is a facility plus certified module. A hospital attesting to several modules produces several rows. The PI criteria flag is Y, not YES. Bed-weighted vendor share is not possible from this file.

How Qope handles it: headline counts deduplicate by facility. The raw table does not, by design.

Provider geography is city-level

The NPI registry carries addresses, not coordinates. Providers are therefore aggregated to state on the map and cannot be plotted as pins. Facilities can.

Medicare files are Medicare only

Every prescriber, service and spend figure describes Medicare fee-for-service activity for a completed reporting year. They do not describe commercial payers, Medicaid, cash business or Medicare Advantage. A provider with a small Medicare panel and a large commercial practice will look small here.

Discontinued listings are not competition

A company holding an approval whose every listing is marked discontinued is not competing. Qope counts actively marketed generics for contestability, and reports the discontinued holders separately in the tooltip.

AB rating changes what a generic count means

Generics without an AB therapeutic-equivalence rating cannot be substituted automatically at the pharmacy. Brand erosion in that market is far slower than the count of generics suggests. Rows in that situation carry a No AB substitute badge.