The weekly launch tracking report shows NBRx down. The brand lead wants an explanation by the Thursday meeting. Before anyone asks what happened in the market, ask what happened to the file.
Commercial pharma runs on data you didn’t create, and most of the ways it breaks look like a trend. The post on the commercial data most likely to be wrong lists them: half a file, a restatement, a renamed column, a unit change, a realignment. Every one loads without an error. So work through them in order, cheapest check first, before anyone says the word “performance.”
The same order works for NRx and TRx, the prescription measures behind the weekly forecast and launch tracking reports on the launch page. NBRx isn’t on that list, but the checks don’t change, because they test the feed rather than the metric.
Five checks, in this order
| Step | Question | What a data cause looks like | Check | Long version |
|---|---|---|---|---|
| 1. Delivery | Did this week’s file arrive once, on time? | Missing week, or a week loaded twice | Max load date is this week; one delivery per period | Vendor feed tests |
| 2. Completeness | Did all of it arrive? | 26,000 rows where 40,000 belong | Row count against the control record, or volume bounds from the feed’s history | Vendor feed tests |
| 3. Restatement | Did history move? | Prior weeks changed inside a clean file | Diff overlapping periods against the delivery you kept | Restatement answer |
| 4. Mapping and units | Did the mix or the scale shift? | Payer or specialty mix jumps; one product moves 10x; a renamed column fills with nulls | Distribution shift on the mix; metric trend per product; schema drift | Testing post |
| 5. Alignment version | Is the report on the current alignment? | One region falls, the nation holds | Territory totals tie to national; activity and sales share one version | Territory answer |
If all five pass, the decline is performance. Brief it, with the check results attached.
Why the order matters
The first two checks take seconds and kill the most common false alarm. A weekly file should arrive exactly once per week. Feeds go missing and feeds get loaded twice, and neither throws an error. A partial file is worse, because a structural check sees nothing: every row valid, nothing null, schema unchanged.
Restatement comes third because it needs something you may not have kept. Syndicated data is part actual, part projection, and many products revise the most recent months on every refresh while older periods stay fixed. A restated prior week can make the newest week look like a drop. If you didn’t keep a snapshot of each period as received, you can’t run this check, and you should start keeping one this week. A two-stage FITT architecture keeps raw data as it arrived, which makes the snapshot free.
Mapping comes fourth. A sudden change in the mix of payer types, specialties, or geographies usually means a mapping regression upstream, not a market move. An NDC remapped from one market basket to another drops one group’s total and raises another’s by about the same amount. A renamed column is nastier. Last week the vendor sent RX_CNT, this week RxCount, and the metric comes back empty while the load reports success.
Alignment comes last because it only explains a regional decline. A realignment can drop a rep 40 percent overnight while the underlying data stays perfectly correct. If regional totals still tie to the national total, credit moved. Nobody lost scripts.
Make the checks run before the meeting
Run by hand, these checks get skipped on a busy week. That is exactly the week the bad file arrives.
In DataOps TestGen, freshness and volume monitors cover steps 1 and 2 on every table, with bounds learned from history. Aggregate Balance on the stable tail and Distribution Shift on the restated months cover step 3. Distribution Shift on the mix and Metric Trend on each product cover step 4. Aggregate Balance on territory rollups covers step 5. The tests run on every load, so by Thursday the answer is already in the results.
A restatement often looks like growth, and nobody questions a number moving the right way. A decline gets questioned. One commercial launch platform had field reporting live six months before launch day because its checks caught bad loads before anyone downstream saw them, and the launch case study has the numbers. Tested feeds are what let you say “performance” on Thursday and have it stick.