MedicineWatch India

Methodology

CDSCO public source
Validate response
Normalize search fields
Deduplicate records
Index and publish

Data collection

MedicineWatch India ingests data from the CDSCO SUGAM portal public JSON APIs:

  • NSQ (Not of Standard Quality) drug alerts
  • Spurious drug alerts

Data is fetched weekly. The ingestion process validates response structure before replacing indexed data. If the upstream source returns malformed or empty data, the previous dataset is preserved. Refreshes are transactional, and backups are retained according to the deployment backup policy.

Normalization

Batch numbers are normalized for search:

  • Exact matching: Unicode-normalized, trimmed, uppercased, whitespace-collapsed
  • Compact matching: spaces, hyphens, slashes, and dots removed. "MFS-124" matches "mfs124"
  • Name matching: SQLite FTS5 with LIKE fallback for product and manufacturer names

The original batch number, product name, and manufacturer name are always preserved as published by CDSCO. Normalized versions are used only for search matching.

Record identity

Each record gets a deterministic ID derived from its classification, product name, batch number, manufacturer, and reporting month. The same CDSCO record always produces the same ID. Records with the same batch number but different products or manufacturers remain separate. They are never merged.

Why no failure rate

CDSCO alert reports list only batches that failed testing. They do not consistently publish the total number of samples tested. Without that denominator, any failure rate would be mathematically invalid. MedicineWatch India shows counts of reported alert records only, explicitly labelled as such.

Recurring appearances

A manufacturer or medicine appearing in multiple monthly alerts does not indicate a failure rate. It may mean more of their products were sampled. MedicineWatch India shows recurrence counts as "listed in N alert records across M months," never as a ranking or rate.

Corrections

If CDSCO revises or removes an alert, the next ingestion cycle will update the record. Records are never automatically hard-deleted. If you believe a record is incorrect, see the corrections page.

Known limitations

CDSCO source formatting and historical coverage can change. Counts are published alert records, not prevalence or failure rates; a missing batch is not a safety certification.