Request demo access

SampliFi Trace: your program’s record, in plain English.

Program and prescriber analytics built from the partner pharmacy’s order feed, with patient-level detail only where the patient has authorized it. Ask a question or read a standard report.

Illustrative demo using synthetic data for a fictional manufacturer. No real patient, prescriber or pharmacy data.

SampliFi TraceIllustrative · synthetic dataFictional Pharma · Product X (fictional)

Where do new prescriptions originate, by state?

“By state” means the prescriber’s state. The record holds no patient address, so it can’t place patients.

Prescribers in Ohio, Florida and Texas sent 30% of new prescriptions (synthetic); 6 states with fewer than 11 each are hidden.

n = 4,913 new prescriptions in 28 states shown

Show table

Rows returned by the query for: Where do new prescriptions originate, by state?

Prescriber stateNew prescriptionsCumulative share
Ohio53711%
Florida50821%
Texas43330%
Pennsylvania35837%
Illinois33244%
North Carolina27549%
Georgia21354%
Virginia20858%
New York19262%
Indiana18465%
Tennessee17969%
New Jersey15972%
Michigan15175%
Missouri13178%
Colorado11680%
Louisiana11683%
Minnesota10585%
Maryland10387%
Wisconsin10389%
South Carolina10091%
Arizona8993%
Alabama6294%
Kentucky6295%
Oklahoma4896%
Nevada4397%
Utah3998%
Arkansas3599%
Kansas3299%
Delaware<11 hiddenhidden
Rhode Island<11 hiddenhidden
Vermont<11 hiddenhidden
New Hampshire<11 hiddenhidden
Maine<11 hiddenhidden
New Mexico<11 hiddenhidden
Pre-computed for this page from a synthetic record. SampliFi Trace itself looks different.

How an answer is built.

One answer from the record, laid out part by part. Each note describes the part beside it.

Illustrative demo using synthetic data for a fictional manufacturer. No real patient, prescriber or pharmacy data.

SampliFi TraceIllustrative · synthetic dataFictional Pharma · Product X (fictional)
  1. Question

    Where do new prescriptions originate, by state?

    Asked in plain English, the way a brand team would ask an analyst.

  2. Interpretation

    “By state” means the prescriber’s state. The record holds no patient address, so it can’t place patients.

    Words that could mean two things are pinned down before anything is counted.

  3. Query

    SELECT prescriber_state AS state,       suppress(COUNT(*)) AS new_prescriptions,       CASE WHEN COUNT(*) >= 11 THEN         CAST(ROUND(100.0 * SUM(COUNT(*)) OVER (ORDER BY COUNT(*) DESC, prescriber_state)                    / SUM(COUNT(*)) OVER ()) AS INTEGER)       END AS cumulative_share_pctFROM ordersWHERE fill_type_received = 'NBRX'GROUP BY prescriber_stateORDER BY COUNT(*) DESC, prescriber_state;

    The SQLite query that produced this answer on this page, exactly as it ran.

  4. Rows

    6,748 synthetic orders read. 34 states have new prescriptions; 6 have fewer than 11 and are hidden.

    Show the rows

    Rows returned by the query for: Where do new prescriptions originate, by state?

    Prescriber stateNew prescriptionsCumulative share
    Ohio53711%
    Florida50821%
    Texas43330%
    Pennsylvania35837%
    Illinois33244%
    North Carolina27549%
    Georgia21354%
    Virginia20858%
    New York19262%
    Indiana18465%
    Tennessee17969%
    New Jersey15972%
    Michigan15175%
    Missouri13178%
    Colorado11680%
    Louisiana11683%
    Minnesota10585%
    Maryland10387%
    Wisconsin10389%
    South Carolina10091%
    Arizona8993%
    Alabama6294%
    Kentucky6295%
    Oklahoma4896%
    Nevada4397%
    Utah3998%
    Arkansas3599%
    Kansas3299%
    Delaware<11 hiddenhidden
    Rhode Island<11 hiddenhidden
    Vermont<11 hiddenhidden
    New Hampshire<11 hiddenhidden
    Maine<11 hiddenhidden
    New Mexico<11 hiddenhidden

    How much of the record was read, and how many groups were too small to show.

  5. Answer

    Prescribers in Ohio, Florida and Texas sent 30% of new prescriptions (synthetic); 6 states with fewer than 11 each are hidden.

    n = 4,913 new prescriptions in 28 states shown

    One sentence and one chart, with n printed beside them.

  6. Check

    On this page, each answer carries the definition, the count and the SQLite query that produced it, so the number can be checked against the query. In SampliFi Trace, each answer shows the counts and rows behind it.

    The working stays attached, so a number can be checked rather than trusted.

One answer, pre-computed for this page from a synthetic record. SampliFi Trace itself looks different.

What reaches your team.

SampliFi Trace is designed so that aggregate views include every order, while patient-level views include only patients whose authorization is on file. Prescriber reporting is keyed to NPI.

Every order, in aggregate
Counts, rates and closed-status reasons; days from order to close and to shipment; product, strength and payer type, by month. Groups under 11 are hidden.
Prescribers, identified
NPI, name, city, state and ZIP from the order, with new prescriptions and what happened to them, per prescriber. Prescriber-level reporting is for brand and program teams, not field-rep targeting.
Patient-level detail, with authorization
Order-level rows and lookup by patient ID or order number, only for patients whose authorization is on file, only for named program-operations roles, and never for sales teams.
Never shown to a manufacturer
Identified order-level rows (patient ID, order number, exact dates) for patients without an authorization, and anything that could tie a journey token back to a person.

The pharmacy’s order feed: 28 fields

Order

  • patid
  • order_number
  • create_date
  • closed_date
  • ship_date
  • order_status
  • closed_status

Product

  • ndc
  • drug_name
  • dispensed_qty
  • written_qty
  • consigned

Prescriber

  • prescriber_npi
  • prescriber_dea
  • prescriber_lname
  • prescriber_fname
  • prescriber_addr
  • prescriber_city
  • prescriber_state
  • prescriber_zip

Pharmacy

  • pharmacy_npi
  • pharmacy_name

Payer and fill type

  • copay_from_primary_claim
  • patient_net_copay
  • payor_type_shipped
  • payor_name
  • fill_type_received
  • fill_type_shipped

SampliFi’s consent record

  • patid
  • opted_in
  • consent_date
  • version
  • revoked_date

One row per patient: authorized or not, the date, the version they saw, and when it was revoked.

Your consignment records

  • ndc
  • units_consigned
  • consigned_date

Stock on hand is units consigned minus units dispensed, by NDC.

Not in the record

  • Patient name, date of birth, age, sex, address or contact details
  • Diagnosis
  • The date a prescription was written
  • Delivery or receipt dates, carriers and lot numbers
  • Rx numbers, fill numbers and days’ supply

Schema shown as designed for the proof of concept.

Where prescriptions originate.

New prescriptions by the prescriber’s state. The record holds no patient address.

Illustrative demo using synthetic data for a fictional manufacturer. No real patient, prescriber or pharmacy data.

SampliFi TraceIllustrative · synthetic dataFictional Pharma · Product X (fictional)

New prescriptions (synthetic)

  • 32–61
  • 62–104
  • 105–158
  • 159–274
  • 275–537
  • Fewer than 11, hidden
  • None

Prescribers in Ohio, Florida and Texas sent 30% of new prescriptions (synthetic); 6 states with fewer than 11 each are hidden.

n = 4,913 new prescriptions in 28 states shown

Gaps may reflect where the partner pharmacy is licensed, not demand.

Top states, ranked

All 34 states, as a table

New prescriptions by prescriber state, January to September 2026 (synthetic)

Prescriber stateNew prescriptions
Ohio537
Florida508
Texas433
Pennsylvania358
Illinois332
North Carolina275
Georgia213
Virginia208
New York192
Indiana184
Tennessee179
New Jersey159
Michigan151
Missouri131
Colorado116
Louisiana116
Minnesota105
Maryland103
Wisconsin103
South Carolina100
Arizona89
Alabama62
Kentucky62
Oklahoma48
Nevada43
Utah39
Arkansas35
Kansas32
Delaware<11 hidden
Maine<11 hidden
New Hampshire<11 hidden
New Mexico<11 hidden
Rhode Island<11 hidden
Vermont<11 hidden
Pre-computed for this page from a synthetic record. SampliFi Trace itself looks different.

Standard reports.

Three standard reports, each shown with the query that produced it on this page.

Illustrative demo using synthetic data for a fictional manufacturer. No real patient, prescriber or pharmacy data.

SampliFi TraceIllustrative · synthetic dataFictional Pharma · Product X (fictional)

September at a glance

New prescriptions
812
orders created in September (synthetic)
Prescribers sending
468
with a September order (synthetic)
Of those shipped: within 2 days
74.5%
of 671 shipped (synthetic)
Patients with authorization on file
59.7%
of 4,951 consent records (synthetic)

New prescriptions are NBRX orders created 1–30 September 2026. Shipping time counts days from the order (Day 0) to the ship date, for the orders that shipped. Authorization counts consent records with sharing authorized and not revoked.

Show query

The SQLite query that produced this report on this page.

SELECT suppress(COUNT(*)) AS new_prescriptions,       COUNT(DISTINCT prescriber_npi) AS prescribers,       suppress(COUNT(ship_date)) AS shipped,       ROUND(100.0 * SUM(julianday(ship_date) - julianday(create_date) <= 2)             / COUNT(ship_date), 1) AS pct_shipped_within_2_days,       (SELECT COUNT(*) FROM consent) AS consent_records,       (SELECT ROUND(100.0 * SUM(opted_in = 'Y' AND revoked_date IS NULL) / COUNT(*), 1)        FROM consent) AS pct_authorization_on_fileFROM ordersWHERE fill_type_received = 'NBRX'  AND create_date BETWEEN '2026-09-01' AND '2026-09-30';

Prescriber ranking

Top 10 prescribers by new prescriptions, January to September 2026 (synthetic IDs)

Prescriber IDPrescriber stateNew prescriptions
RX-7556Missouri41
RX-9451North Carolina41
RX-2729Ohio38
RX-7051Pennsylvania35
RX-0875Colorado31
RX-5722Florida31
RX-4496Texas30
RX-4564Maryland26
RX-4711Missouri26
RX-1084Wisconsin25
Show query

The SQLite query that produced this report on this page.

SELECT prescriber_npi,       prescriber_state,       suppress(COUNT(*)) AS new_prescriptionsFROM ordersWHERE fill_type_received = 'NBRX'GROUP BY prescriber_npi, prescriber_stateORDER BY COUNT(*) DESC, prescriber_npiLIMIT 10;

Shipment timing

New prescriptions shipped, by month the order was created

MonthShippedWithin 1 dayWithin 2 days
Jan 202625747.1%72.8%
Feb 202629948.8%76.9%
Mar 202635744.5%73.9%
Apr 202639849.5%80.7%
May 202647348.6%76.7%
Jun 202650247.4%74.1%
Jul 202655148.6%76.0%
Aug 202661847.9%74.6%
Sep 202667149.5%74.5%
Show query

The SQLite query that produced this report on this page.

SELECT strftime('%m', create_date) AS month,       suppress(COUNT(ship_date)) AS shipped,       ROUND(100.0 * SUM(julianday(ship_date) - julianday(create_date) <= 1) / COUNT(ship_date), 1) AS pct_within_1_day,       ROUND(100.0 * SUM(julianday(ship_date) - julianday(create_date) <= 2) / COUNT(ship_date), 1) AS pct_within_2_daysFROM ordersWHERE fill_type_shipped = 'NBRX'GROUP BY monthORDER BY month;
Reports pre-computed for this page from a synthetic record. SampliFi Trace itself looks different.

What the record is, and what it isn’t.

What this record is

  • Program data, not market data. It counts the orders in your program at one pharmacy. It doesn’t estimate the market or your share of it.
  • Small numbers. A program’s counts can be small, so every chart shows its n and groups under 11 are hidden.
  • One pharmacy. Orders reach the record through one licensed partner pharmacy. Gaps on a map may reflect where it is licensed, not demand. After the first fill, the record continues only while the patient fills there.

What it doesn’t contain

  • Patient name, date of birth, age, sex, address or contact details
  • Diagnosis
  • The date a prescription was written
  • Delivery or receipt dates, carriers and lot numbers
  • Rx numbers, fill numbers and days’ supply

A question that needs one of these gets the answer “Not available in this feed.”

Illustrative demo using synthetic data for a fictional manufacturer. No real patient, prescriber or pharmacy data.

About the demo dataIllustrative · synthetic data

A script with a fixed seed (20260930) generated 6,748 orders created 1 January to 30 September 2026 for one fictional product in two strengths, plus SampliFi’s consent records and quarterly consignment records. Each answer is a SQLite query over those tables. Counts of patients under 11 are returned as hidden.

build/answers/generate.py · SQLite 3.51.0

The tables every answer on this site is computed from.

CREATE TABLE orders (  patid                    TEXT,    -- pharmacy patient ID; never shown on this site  order_number             TEXT,    -- never shown on this site  create_date              TEXT,    -- order create date: the e-prescription was received (Day 0)  closed_date              TEXT,  ship_date                TEXT,  order_status             TEXT,    -- OPEN or CLOSED  closed_status            TEXT,    -- SHIPPED, TRANSFERRED or another closed status  copay_from_primary_claim REAL,  patient_net_copay        REAL,  ndc                      TEXT,    -- DEMO-0001-01 (fictional)  drug_name                TEXT,  dispensed_qty            INTEGER,  written_qty              INTEGER,  pharmacy_npi             TEXT,    -- synthetic, never NPI-shaped  pharmacy_name            TEXT,  prescriber_npi           TEXT,    -- synthetic ID RX-0412, never NPI-shaped  prescriber_dea           TEXT,    -- left empty in the synthetic record  prescriber_lname         TEXT,  prescriber_fname         TEXT,  prescriber_addr          TEXT,  prescriber_city          TEXT,  prescriber_state         TEXT,  prescriber_zip           TEXT,  payor_type_shipped       TEXT,  consigned                TEXT,    -- Y when dispensed from manufacturer-owned consignment stock  fill_type_received       TEXT,    -- NBRX, RRX or NRX  fill_type_shipped        TEXT,    -- NBRX, RRX, NRX or NOTSHIPPED  payor_name               TEXT);CREATE TABLE consent (             -- SampliFi's own consent record  patid        TEXT,  opted_in     TEXT,               -- Y or N  consent_date TEXT,  version      TEXT,  revoked_date TEXT);CREATE TABLE consignment (         -- the manufacturer's consignment records  ndc             TEXT,  units_consigned INTEGER,  consigned_date  TEXT);

Ask your own questions in the working demo.

We’ll set up a walkthrough of SampliFi Trace on synthetic data.