7 Controlled-Substance Log Tools 2026 (Free Template)
Automated reconciliation of controlled-substance logs is a daily closeout that compares what the PIMS says was dispensed with what the lockbox and perpetual log say is on the shelf, then holds any variance for the veterinarian in charge. It is not a chatbot. It is not a spreadsheet you remember on Friday. The category decision is whether your practice-information system already stores dispenses, waste, and on-hand counts in a way a person can still sign.
This roundup covers seven veterinary systems that clinics actually use as the file: ezyVet, IDEXX Cornerstone, Instinct, Shepherd, Digitail, Covetrus Pulse, and Avimark. US Tech Automations only enters after those systems can export a dispense row and a human still reviews a variance. Nothing here is legal advice; DEA, state board, and veterinary-client-patient-relationship rules still sit on the licensee.
High pet ownership is why controlled-drug volume in companion-animal practice is routine, not rare. Routine is exactly when paper logs drift.
Glossary
US households with a pet: 66% according to APPA (checked September 1, 2026) (2024 National Pet Owners Survey family of figures). Use these terms the same way in the PIMS, the paper or electronic log, and the closeout checklist (the free template later in this article). If your team uses “log” to mean three different binders, pick one owner.
| Term | Meaning in this workflow | Who signs | Typical cadence |
|---|---|---|---|
| Perpetual log | Running on-hand by bottle or SKU | PIC / DVM | Every dispense |
| Dispense | Quantity leaving stock onto a patient | DVM / authorized staff | Per visit |
| Waste / reverse | Quantity destroyed or returned | DVM + witness if required | Per event |
| Variance | PIMS vs physical vs log | PIC | Daily closeout |
| Biennial inventory | DEA-required count of stock | Registrant | At least every 2 years |
| Schedule | DEA I–V classification | n/a | On every SKU |
| PIC | Veterinarian legally accountable | DVM | Always |
Controlled substance schedules: 5 according to the DEA Diversion Control Division (schedules I–V). Veterinary clinics typically handle II–V; the log design must still treat Schedule II with the tighter count and ordering rules your counsel names. Software does not downgrade a schedule.
How we evaluated
Buyer-fit for reconciling controlled-substance logs, not a general PIMS ranking. Five means the product is a documented veterinary system of record with inventory/dispense objects a clinic can close against. One means it is adjacent (phone-tag, marketing). Weights are planning weights.
| Evaluation criterion | Weight | Proof in a live test | Why it matters |
|---|---|---|---|
| Dispense identity | 25% | 1 patient, 1 SKU, 1 quantity | A log without a patient is a story |
| On-hand vs physical | 20% | 1 bottle count, 1 PIMS on-hand | Variance lives here |
| Waste / reverse path | 20% | 1 wasted ml with witness field | Missing waste is a silent shortage |
| Export and closeout | 20% | 1 daily CSV or screen, 1 signer | Friday catch-up is not control |
| Permissions | 15% | 2 roles, 1 PIC-only adjust | Anyone-can-edit is not a log |
Ask the vendor to dispense 1 ml, waste 0.2 ml, show on-hand, and export the row. If that takes a support ticket, you do not have automated reconciliation. You have a database.
TL;DR: keep the PIMS as the dispense file; use a daily closeout checklist (template below) whether you are on ezyVet or Cornerstone; do not buy a marketing tool to fix a lockbox count.
Feature matrix
Editorial 1–5 scores for controlled-log closeout, not overall PIMS quality. Most veterinary platforms quote implementation; treat prices as contact-vendor unless you have a current order form.
| Capability | ezyVet | Cornerstone | Instinct | Shepherd | Digitail | Covetrus Pulse | Avimark |
|---|---|---|---|---|---|---|---|
| Inventory / dispense objects | 5 | 5 | 5 | 5 | 4 | 5 | 4 |
| Controlled-drug workflow depth | 4 | 4 | 4 | 4 | 3 | 4 | 3 |
| Role permissions | 4 | 4 | 5 | 4 | 4 | 4 | 3 |
| API / export for closeout | 5 | 3 | 4 | 4 | 4 | 3 | 2 |
| Cloud vs on-prem posture | 5 | 3 | 5 | 5 | 5 | 4 | 2 |
| Buyer-fit /5 for this job | 5 | 4 | 5 | 4 | 4 | 4 | 3 |
| Public start price | Contact vendor | Contact vendor | Contact vendor | Contact vendor | Contact vendor | Contact vendor | Contact vendor |
| Planning implementation | 4–12 weeks | 8–20 weeks | 4–12 weeks | 4–12 weeks | 2–8 weeks | 6–16 weeks | 4–12 weeks |
ezyVet and Instinct score well here because cloud APIs and inventory objects are part of the product story. Cornerstone remains a system of record in many hospitals; closeout may still involve a report plus a binder. Avimark is widely installed and weaker as an automation bus.
Vendor profiles
ezyVet — best when you want a cloud PIMS with a public API
Best fit: hospitals that already run or will run ezyVet and can close inventory against API-readable dispense rows. Primary evidence: ezyVet (checked September 1, 2026) and ezyVet API docs (checked September 1, 2026). ezyVet is the first demo when “export the day’s controlled dispenses” must be a job, not a screenshot.
Limitations: configuration quality varies by hospital; an API does not replace a PIC signature. Implementation: map each controlled SKU, unit of measure, and bottle ID before you automate anything. Disqualifier: you will not leave Cornerstone this year and only needed a paper template.
IDEXX Cornerstone — best when Cornerstone is already the hospital file
Best fit: practices standardized on Cornerstone whose controlled log already hangs off that inventory. Primary evidence: IDEXX Cornerstone (checked September 1, 2026). Do not migrate PIMS to fix a closeout habit.
Limitations: automation and modern API expectations are the common complaint; many hospitals still reconcile from reports. Implementation: name the exact report and the person who signs it daily. Disqualifier: greenfield cloud PIMS shoppers.
Instinct — best for cloud-native hospitals that want structured records
Best fit: teams on Instinct that want structured clinical and inventory records in one cloud system. Primary evidence: Instinct (checked September 1, 2026). Instinct belongs on this list because the file can be the log source if you configure inventory tightly.
Limitations: you still need a physical count and a PIC. Implementation: lock who can adjust on-hand. Disqualifier: you are not moving off your current PIMS.
Shepherd — best for Shepherd-standardized cloud practices
Best fit: clinics already on Shepherd that can hang controlled SKUs on inventory and appointments. Primary evidence: Shepherd (checked September 1, 2026). Keep the log next to the medical record.
Limitations: not a reason to switch PIMS for DEA paperwork alone. Disqualifier: multi-site hospitals committed to another vendor’s estate.
Digitail — best for lighter cloud records plus client communication
Best fit: practices using Digitail that still must close a controlled log, not only a client app. Primary evidence: Digitail (checked September 1, 2026). Pair inventory discipline with the medical record.
Limitations: confirm controlled-drug depth in the demo; do not assume a client-experience product is a narcotics system. Disqualifier: you needed Cornerstone-grade inventory and you already have it.
Covetrus Pulse — best when Pulse is the operational suite
Best fit: hospitals in the Covetrus Pulse ecosystem that want inventory and practice ops in that suite. Primary evidence: Covetrus Pulse (checked September 1, 2026). Demo the controlled-drug path, not the marketing slides.
Limitations: suite boundaries and reporting exports vary; get the closeout report named in writing. Disqualifier: you run ezyVet cleanly and were only curious.
Avimark — best for hospitals that still run Avimark as the file
Best fit: practices whose medical and inventory history live in Avimark and will not migrate this quarter. Primary evidence: Avimark (checked September 1, 2026) (Covetrus family). Honesty: closeout is often report-plus-binder.
Limitations: weakest automation bus in this set. Implementation: stabilize the daily report before buying glue. Disqualifier: greenfield cloud buyers.
If billing is the actual mess, use wellness-plan billing reconciliation rather than stretching the narcotics log. Reputation and lead follow-up are different jobs: veterinary reputation management and veterinary lead follow-up. A hyphenated sibling URL also exists for this topic at controlled-substance logs without the extra hyphen.
Pricing and TCO
Veterinary PIMS pricing is quoted. Do not invent per-DVM list prices. Planning numbers below are for a 3-DVM companion-animal hospital thinking about closeout labor, not a vendor quote.
| Vendor | Pricing model | 3-DVM planning admin | Implementation planning | Daily closeout minutes (target) | Hidden cost |
|---|---|---|---|---|---|
| ezyVet | Quote | 1 | 4–12 weeks | 15–25 | SKU cleanup |
| Cornerstone | Quote / IDEXX | 1 | 8–20 weeks | 20–40 | Report wrangling |
| Instinct | Quote | 1 | 4–12 weeks | 15–25 | Permission design |
| Shepherd | Quote | 1 | 4–12 weeks | 15–25 | Inventory setup |
| Digitail | Quote | 1 | 2–8 weeks | 20–35 | Confirm CS depth |
| Covetrus Pulse | Quote | 1 | 6–16 weeks | 20–35 | Suite modules |
| Avimark | Quote | 1 | 4–12 weeks | 25–45 | Manual log dual-entry |
Veterinarian median annual wage: $119,100 according to the BLS Occupational Outlook Handbook (2024). A DVM recounting bottles after hours is more expensive than a 20-minute tech closeout with a PIC exception queue. Model labor, not only software.
Unit-of-measure errors are the boring way logs fail. Tablets counted as milliliters, multi-dose vials written as “1 bottle,” and compounded items without a bottle ID will defeat any export. Fix SKU setup before you talk about automation. A clean 42-SKU list with units and bottle IDs is worth more than a new PIMS logo.
US pet industry spend: $147 billion according to APPA (checked September 1, 2026) (2023 actuals reported in 2024). Spend does not authorize a missing ml. It does explain why clinics cannot treat controlled inventory as a back-office hobby.
Step-by-step reconciliation recipe (free template)
Print this or copy it into your SOP. It is a closeout, not a substitute for DEA or board rules. Adjust witness and Schedule II steps to your counsel’s instruction.
| Step | Action | System | Pass rule | PIC needed? |
|---|---|---|---|---|
| 1 | Freeze new dispenses for 10 minutes or run at close | PIMS | Clock time recorded | No |
| 2 | Export today’s controlled dispenses | PIMS | 1 row per SKU+patient | No |
| 3 | Export waste / reverse | PIMS | Witness field if required | If waste |
| 4 | Physical count of open bottles | Lockbox | 2 people if your rule says so | If variance |
| 5 | Compare PIMS on-hand vs count | Log | Variance = 0 or held | Yes if ≠ 0 |
| 6 | Write variance note with bottle ID | Log + PIMS | Note has SKU, qty, reason | Yes |
| 7 | Sign the day | Log | Named PIC / delegate | Yes |
| 8 | File export for 24 months or your rule | Storage | Retrievable by date | No |
A 3-DVM small-animal hospital reconciling 42 controlled-item SKUs, 180 dispenses per month, and a 24-hour closeout window could pull ezyVet rows where prescription.active is true for controlled products, compare on-hand to the lockbox, and hold any variance over 1 unit (or 0.1 ml for liquids) for the PIC to sign before the next open. That is a planning scenario, not a measured clinic result. ezyVet’s API documents prescription resources and an active field in ezyVet API documentation (checked September 1, 2026); treat the token as a prerequisite for an export, not as a prebuilt narcotics product.
A proposed US Tech Automations workflow would take that nightly export, flag any SKU whose PIMS on-hand and counted on-hand disagree, and put a variance card in front of the PIC with bottle ID, patient, and quantity — never auto-adjusting on-hand. Prerequisites: an ezyVet API credential scoped to prescriptions/inventory, a written variance threshold, and a human signer. Output: a dated exception list. See data-extraction agents for how an export-to-queue step is configured, and pricing only if the PIMS report cannot already produce the day’s list.
If the PIMS already prints a signed daily list and the PIC uses it, stop. US Tech Automations should not sit in front of a working closeout; it only earns a place when the export exists and the exception queue does not.
U.S. veterinarians: 124,000+ according to AVMA (checked September 1, 2026) workforce communications (2023-era published scale). Workforce size is not a compliance control. A signed daily list is.
Hospitals that only reconcile the week of a promised inspection are practicing for the inspector, not for the patient or the license. The template above is meant to be boring and daily. If it takes more than half an hour, your SKU list or your waste path is wrong. Shrink the SKU list of open bottles, not the frequency of the count.
U.S. households: 131.2 million according to the U.S. Census Bureau (checked September 1, 2026) (2023). Combined with APPA’s pet-owning share, you can see why community clinics touch controlled inventory every open day. Build the closeout for every open day, not for the week of a DEA visit.
Key Takeaways
Reconciliation is PIMS dispenses versus physical stock versus the perpetual log, signed by a PIC.
ezyVet and Instinct are the stronger automation-oriented files; Cornerstone and Avimark are still valid systems of record.
The free template is an 8-step daily closeout, not a legal form.
APIs help you export; they do not sign the log.
Variance over your threshold is a human event, never an auto-adjust.
Do not confuse client-experience software with a narcotics system of record.
Open bottles versus sealed stock should not share one line on the log if your counsel wants bottle-level identity. A sealed bottle that never left the safe is a different object from the vial on the treatment-room clip. If the PIMS only knows SKU-level on-hand, the physical count still has to name bottles. Write that mapping once. Do not rediscover it every night.
Shift change is a second closeout, not an excuse to skip the daily one. If the morning doctor wastes 0.2 ml and the evening doctor dispenses 1.0 ml, a single end-of-day export still works only if both events hit the PIMS before the freeze. Late paper notes are how mornings disagree with nights. Put waste in the PIMS before the patient leaves the table.
Who this is for
This article is for veterinary hospitals that already dispense scheduled drugs, keep a PIMS, and can name the veterinarian who signs the log. Typical stack: ezyVet, Cornerstone, Instinct, Shepherd, Digitail, Pulse, or Avimark plus a lockbox and a perpetual log. Typical pain: Friday catch-up, mismatched units (tablets vs ml), waste not written, and a binder that does not match the screen.
Red flags: no PIMS inventory for controlled SKUs; no named PIC; a plan to let software auto-correct on-hand without a signature. If you cannot physically count, do not automate the count.
FAQ
Can software replace the DEA perpetual log?
No. Software can hold dispense rows and produce a closeout list. The registrant still owes an accurate log and inventory under federal and state rules. Use the PIMS as evidence, not as a substitute for the signature.
Which PIMS is best for controlled-substance reconciliation?
The best starting point is the PIMS you already run if it can export dispenses, waste, and on-hand by SKU. ezyVet is a strong cloud/API option; Cornerstone remains common. Switching PIMS only to pretty up a log is usually the expensive path.
How often should we reconcile?
Daily closeout on days you dispense, plus the biennial (or more frequent) inventory your rules require. Weekly catch-up is how variances age until they are unexplainable. Put the eight-step template on the close checklist.
What is a reasonable variance threshold?
There is no universal number in this article on purpose. Liquids, tablets, and multi-dose vials differ. Write a threshold with the PIC, hold everything above it, and never auto-adjust. The worked example’s 1 unit / 0.1 ml is a planning illustration only.
Should we use Zapier to text the DVM a shortage?
You can, if the text is an alert and not an on-hand change. Zapier, Make, or n8n can watch an export and notify, with run history if you configure it. They must not write inventory without a PIC path. Keep adjustments in the PIMS with a person attached.
Is this the same as wellness-plan billing reconciliation?
No. Wellness-plan billing is a receivables job. Controlled logs are an inventory and legal-accountability job. Do not combine them in one spreadsheet because both say “reconcile.”
Witness rules, Schedule II ordering, and state-board variations are why this article refuses a single numeric variance threshold. Copy the eight-step closeout, then let the PIC and counsel fill the numbers. If two hospitals in the same group use different PIMS, still use the same closeout language so a relief DVM is not guessing which binder is official.
Lockbox hardware is part of the system. A PIMS that is perfect and a box that three people can open without a log is not control. Pair user permissions in software with physical keys, cameras if your counsel wants them, and a list of who may count. Automation that texts a shortage to a group chat the receptionist can read is a confidentiality problem, not a convenience.
This is informational, not legal advice. Confirm current PIMS features, DEA, and state-board requirements with your counsel and each vendor. Editorial rankings are not paid placements.
About the Author

Helping businesses leverage automation for operational efficiency.