Industry guide · Custom Software

Oncology Practice Software: Fixing the Regimen, Authorization and Drug Inventory Gap

The short answer

If you are running a multi-site oncology group and your regimen library, prior auth queue, and drug inventory live in three systems that do not talk, a custom build is usually worth it. Expect $60k to $130k for a focused first release in 12 to 16 weeks (typically the prior auth workspace plus drug inventory and lot tracking against your existing EHR), and $150k to $400k phased over 6 to 12 months for a full platform covering regimen orchestration, buy-and-bill margin tracking, and payer rules. Build when your leaked revenue on wasted vials, expired authorizations, and underbilled J-codes is larger than the build, which past six infusion chairs per site it usually is. Run that number yourself before you sign anything. Below that, stay with what you have and fix the workflows.

Why regimen, authorization and inventory software makes or breaks an oncology group

Oncology is the only outpatient specialty where a single administration decision can put $18,000 of drug into a patient's arm before anyone has confirmed the payer will cover it. That asymmetry is what your software either protects you from or exposes you to. Most groups we work with run some combination of Flatiron OncoEMR, McKesson iKnowMed or Epic Beacon for the regimen side, a separate portal per payer for authorizations (Availity, Evicore, Carelon, CoverMyMeds, plus the direct payer portals nobody has automated), McKesson or Cardinal for wholesale ordering, and then a spreadsheet nobody admits to for the part where those three have to agree.

We watched this play out at a five-site group in the Southeast. Tuesday, 7:40am. The infusion nurse pulls a patient for cycle 3 of pembrolizumab plus carboplatin plus pemetrexed. The auth on file covers six cycles, approved in March, expiring at the end of this month. Nobody flagged it because the expiration lives in a PDF attached to the chart, and the schedule was built in the practice management system, which has never read that PDF. The vial gets pulled, reconstituted, and hung. Twelve days later the denial comes back: auth lapsed on day 4 of the cycle window. That is $11,400 the group eats, plus the 90 minutes the auth coordinator spends on a peer-to-peer that will not succeed because the drug is already in the patient.

In the reconciliations we run at the front of these projects, the leak shows up in three buckets every time. Authorizations that expire or that never covered the actual dose administered. Vials wasted because the schedule and the compounding queue were never reconciled, so a single-dose vial of an expensive biologic gets opened for a patient who no-showed. And J-code billing that undercounts units because the waste documentation on the JW modifier was never captured at the pump. None of these are exotic. They are all the same root cause: the regimen, the authorization, and the physical vial are three separate records that only a human ties together, and the human is a 26-year-old auth coordinator with 40 charts in her queue.

Problem 1: Authorizations are tracked as documents, not as living entitlements

Your auth coordinator submits through Availity, gets a PDF back, uploads it to the chart, and types the auth number into a text field. From that moment forward, the authorization is a dead artifact. It does not know how many cycles have been consumed. It does not know that the oncologist dose-reduced from 200mg to 150mg at cycle 2, which may or may not be within the approved band. It does not know it expires in 11 days.

OncoEMR and Beacon will store the auth. They will not model it. The reason is structural: an authorization is a payer-specific entitlement with a drug, a dose range, a cycle count, a date window, a site of care, and sometimes a step-therapy precondition. That is a six-dimension object. The EHR gives you a string field. Every workaround built on top of that string, the Excel tracker with conditional formatting, the shared Outlook calendar with reminders, the Monday-morning huddle where someone reads out expiring auths, is a person doing a database's job.

What a custom build does: model the authorization as a first-class record with structured fields, then bind it to the treatment plan. Auth has drug (by HCPCS J-code, not free text), approved dose range, cycles approved, cycles consumed, valid-from and valid-through, site of care, and payer. Every scheduled administration checks against it at three points: when the appointment is booked, at 72 hours out, and at the moment pharmacy releases the order for compounding. If cycle 3 falls outside the window, the appointment cannot be confirmed without an override that names the person overriding. If the oncologist dose-reduces, the system recomputes whether the new dose sits inside the approved band and, if not, opens a reauth task automatically with the dose delta pre-filled.

The AI piece here is narrow: document extraction. Payer approval letters arrive as PDFs and faxes in about 30 different layouts. A model reads the letter, pulls out auth number, drug, units approved, date span, and cycle count, and populates the structured record with a confidence score. Anything under threshold routes to a human for 15 seconds of confirmation instead of 4 minutes of retyping. At 300 auths a month, that gives you back roughly 15 to 20 hours in our experience, and it kills the transcription errors that cause denials nobody can appeal.

Problem 2: Drug inventory and the treatment schedule live in different universes

You order from McKesson against a par level. You schedule patients in the practice management system. The connection between those two is a pharmacy tech's judgment. When it works, it works because that tech has been there nine years and knows Tuesday is heavy.

The failure is expensive and specific. A single-dose vial of a checkpoint inhibitor gets opened for a 9am patient who called in sick at 8:52. That vial is now scrap. Or the reverse: a patient shows and you are short, so somebody drives product from the Marietta site to the Alpharetta site, which is a controlled-substance-adjacent transfer nobody documented properly and which now breaks your lot traceability. And under buy-and-bill, you are financing this inventory. A group carrying $600k of drug on the shelf at any moment is carrying real cost of capital, and most groups carry more than they need because nobody has the confidence to run leaner.

Off-the-shelf inventory tools do not fix this because they are built for consumables, not for a $9,000 vial whose value is tied to a specific patient on a specific day with a specific authorization. Cardinal and McKesson portals show you what you bought. They do not know your schedule.

What a custom build does: a demand forecast keyed to the confirmed schedule, not to historical par. The system reads the next 14 days of confirmed appointments, resolves each to a regimen, resolves each regimen to drugs and doses by patient BSA and current dose modifications, and produces a required-units projection by NDC. That projection nets against on-hand lots with expiry dates, and it flags two things: shortfalls that need an order today given the wholesaler lead time, and lots that will expire before the schedule consumes them, so you can either sequence a patient onto that lot or return it while the window is still open.

Lot-level tracking is the other half. Every vial gets scanned at receipt, at compounding, and at administration, so the lot on the pump is the lot in the chart. This matters for recalls, it matters for 340B if you are covered-entity adjacent, and it matters for the waste documentation that drives your JW and JZ modifier accuracy. The forecasting model does one useful thing: it learns your real no-show pattern per site, per day, per payer class, so the 14-day projection knows the Thursday clinic at your second site and does not tell you to open vials against it.

Problem 3: Regimen changes do not propagate to anything downstream

An oncologist decides on Monday to hold the carboplatin for cycle 4 because platelets are at 68. In the EHR she updates the plan. That change now needs to reach: the schedule (the infusion is shorter, the chair time changes), pharmacy (do not compound the carbo), the auth record (did the approval cover the doublet as a unit or as separate line items), inventory (that vial goes back to available), and billing (the claim drops one J-code and the units on another).

In practice it reaches the nurse, verbally, and everything else catches up over the next four days or does not catch up at all. Beacon handles the clinical side of this reasonably. It does not handle the operational and financial side, because those systems are downstream of a different vendor.

What a custom build does: treat the treatment plan as the single source of truth and make every downstream system a subscriber. When a dose is held or reduced, the event fires and each subscriber reacts on the same transaction: chair time recomputes and releases the freed slot back to scheduling, the compounding queue drops the item before the tech touches it, the auth checker re-evaluates coverage, the inventory reservation releases, and the charge capture draft updates. That is an event model with a durable log, so you can answer "who changed what and when" during an audit. The part that takes real domain work is the regimen library itself: encoding NCCN-aligned regimens with their dose-modification rules, their cycle structures, their premedication and growth-factor dependencies, and their site-specific variations. That library is the asset, and it is what separates a shop that has built oncology software from one learning on your budget.

Problem 4: Nobody can see margin per regimen until the quarter closes

Ask a practice administrator what the contribution margin is on their most-used first-line lung regimen, right now, at the second site, under their largest commercial payer. They will get you an answer in three weeks with help from the billing company. Under buy-and-bill, where you purchase the drug and bill the payer, the spread between acquisition cost and allowed amount is the business. ASP changes quarterly. Your contracted rates change annually and unevenly by payer. Your acquisition cost changes with your wholesaler tier and any GPO participation.

Generic BI (Business Intelligence) on top of the practice management system gives you charges and collections. It does not give you the drug cost against the specific lot administered, and it does not tie the denial back to the regimen decision that caused it.

What a custom build does: compute margin at the administration level, not the claim level. Each administration carries its actual acquisition cost from the lot, its expected allowed amount from the contracted rate table for that payer and J-code, its actual paid amount when the remit lands, and the variance. Roll that up by regimen, by payer, by site, by ordering physician. Now the conversation with your largest commercial payer at contract renewal is not "our costs are up," it is "on these four J-codes your allowed sits below our acquisition plus handling, here is 14 months of administration-level data." That conversation is worth more than the software costs.

Problem 5: The after-hours and between-visit gap

A patient on day 6 of a cycle calls at 8pm with a fever of 100.9. That is a neutropenic fever question and it is time-critical. Your answering service takes a message. The on-call gets it 40 minutes later without the chart, without knowing the regimen, without knowing the nadir window. Separately, your symptom monitoring program, the one that reduces ED visits, exists as a nurse calling patients from a paper list when she has time.

What a custom build does: structured between-visit capture tied to the treatment calendar. The patient gets a simple check-in on the days that matter for their specific regimen, because the system knows the nadir window for their protocol. Responses are triaged by rule first: temp over 100.4 on a myelosuppressive regimen inside the nadir window pages the on-call with the regimen, the cycle day, the last CBC, and the protocol on the same screen. A model helps at the intake edge, taking a free-text or voice symptom report and mapping it to structured CTCAE-style grading with a confidence score, so the triage nurse reads a graded summary instead of a paragraph. It does not make the clinical call. It makes the clinical call arrive with context.

What this costs and how long it takes

These are Digital Heroes delivery bands from across 2,000-plus projects, not market averages. A focused first release runs $60k to $130k and ships in 12 to 16 weeks. In this category the right first release is almost always the authorization workspace plus drug inventory with lot tracking, reading your existing EHR rather than replacing it. That scope pays for itself fastest and it does not require you to touch clinical documentation, which is where projects go to die. A full platform, regimen orchestration, scheduling integration, margin analytics, patient monitoring, runs $150k to $400k phased over 6 to 12 months.

What drives price up specifically here: the number of payer portals you need to submit into and how many of them lack an API, so somebody is writing and maintaining automation against a portal that redesigns twice a year. Every payer beyond the first three adds real cost. HL7 v2 or FHIR integration depth with your EHR, reading is cheap, writing back into Beacon is not. The size of your regimen library and whether you accept a standard set or need your physicians' local variants encoded. HIPAA posture, which at minimum means a BAA, audit logging on every PHI read, encryption at rest and in transit, and role-based access that a compliance officer can actually test. If you are 340B, add contract pharmacy reconciliation, which is its own project. And multi-site adds less than people fear, maybe 10 percent, unless your sites have genuinely different payer mixes and formularies, in which case it is more.

Build or buy: the honest line

Stay with off-the-shelf if you are a single site with under six chairs, one dominant payer, and a stable regimen mix. Flatiron, iKnowMed and Beacon are good products. The auth burden at that scale is one coordinator's job and she can hold it in her head. Spending $90k to systematize a problem that costs you $40k a year is a bad trade, and we will tell you that on the call.

Build when you cross these lines. You have more than two sites and drug transfers between them are routine and undocumented. Your denial rate on drug claims is above 6 percent and your billing company cannot tell you why by regimen. You are carrying more than $400k of inventory and cannot say what fraction of it is aging out. You have added a payer or a service line and the auth queue did not scale, so you hired a second coordinator instead of fixing the system. Or the tell that matters most: someone in your organization maintains a spreadsheet that the practice would stop functioning without. That spreadsheet is your spec. It exists because your software cannot hold the shape of your business, and it will keep existing until something else holds that shape.

How to choose a developer for oncology practice software

Make them draw the data model before they quote. Ask how they would represent an authorization, a regimen, and a lot. If the auth is a field on the patient rather than an entity with a dose range and a cycle counter, they have not built this. If they cannot explain why a regimen is more than a list of drugs, walk. This takes 20 minutes and it separates the field.

Ask what they have actually integrated, by name and by direction. "We do healthcare integrations" is not an answer. The answer is "we have read from OncoEMR via their export, we have written orders into Beacon via HL7 v2 ORM, we have pulled 271 eligibility, and here is what broke." Reading is easy. Writing back is where the scars are. Ask about the scars.

Test their compliance answer for depth, not for vocabulary. Anyone will say HIPAA. Ask who signs the BAA, where PHI sits at rest, whether audit logs capture reads and not just writes, how they handle PHI in their own dev and staging environments, and what happens to your data if the engagement ends. A team that has shipped in this space answers these flatly. A team that has not gets vague around dev environments, which is exactly where PHI leaks.

Settle code ownership and the payer-portal maintenance question in writing, before kickoff. You should own the source outright, in your repository, with your infrastructure accounts. Separately: portal automations break when payers redesign. Ask who fixes that, on what SLA, and what it costs after the initial build. A shop that has not thought about this has not run one of these in production for a year.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. The right combination of digital transformation actions can unlock as much as US$1.25 trillion in additional market capitalization across Fortune 500 companies, while the wrong combinations put more than US$1.5 trillion at risk; companies with all three core factors (strategy, aligned technology, and change capability) saw a 5% market-value lift relative to peers. Source: Deloitte (2023) →
  2. Deloitte reports that modern ERP implementations aim to deliver reduced manual effort, greater transparency, a single source of truth, and increased productivity, but many organizations do not capture the full expected benefits (a significantly lower ROI) without disciplined strategy, change management, and data readiness. Source: Deloitte (2024) →
  3. Brandon Hall Group research on onboarding reports that done well, structured onboarding drives measurable gains in new-hire productivity, employee engagement, and retention; the page notes 41% of organizations experience greater than 5% turnover among new hires. Source: Brandon Hall Group (2024) →
  4. 88% of customers say good customer service makes them more likely to purchase from a brand again in the future, quantifying the direct revenue link between support quality and retention. Source: HubSpot (2024) →
Rohan Malhotra · Enterprise Software Consultant

Rohan advises mid-market and enterprise teams on ERP, CRM and custom software, and has led delivery on dozens of business-software builds.

Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

How much does custom oncology practice software cost for a group with five infusion sites?
For a five-site group, a focused first release covering prior authorization tracking and drug inventory with lot-level traceability typically runs $60k to $130k and ships in 12 to 16 weeks in Digital Heroes delivery experience. A full platform adding regimen orchestration, margin analytics by payer, and patient symptom monitoring runs $150k to $400k phased over 6 to 12 months. Multi-site adds roughly 10 percent over single-site unless your locations have materially different payer mixes and formularies. The number of payer portals you need to automate against drives price more than site count does.
Should we replace Flatiron OncoEMR or build alongside it?
Build alongside it. OncoEMR is competent at clinical documentation and regimen ordering, and replacing your EHR is a multi-year project with a high failure rate that solves the wrong problem. The gaps that cost oncology groups money are authorization entitlement tracking, inventory-to-schedule reconciliation, and administration-level margin, none of which OncoEMR models well. A custom layer that reads from OncoEMR and owns those three domains delivers the return without touching the system your physicians already know.
How long does it take to build a prior authorization tracking system for an oncology practice?
A working prior auth workspace with structured entitlement records, automatic expiration and cycle-consumption checks against the schedule, and AI extraction from payer approval letters typically ships in 12 to 16 weeks. The variable is how many payer portals need submission automation: the first two or three are straightforward, and each additional portal without an API adds engineering and ongoing maintenance. Start with your top three payers by volume and expand from there.
Do we own the source code if we hire a firm to build our oncology software?
You should, and you should confirm it in writing before kickoff, not at handover. The contract should specify that source lives in your repository, deploys to cloud accounts you own, and transfers fully at the end of the engagement with no license-back or runtime dependency on the vendor. Any developer who hesitates on this is planning to make you dependent. Separately, agree on who maintains payer portal automations after launch, since those break when payers redesign their sites.
What HIPAA requirements apply to custom oncology practice software?
Your developer must sign a Business Associate Agreement, and that is the floor, not the finish line. You need encryption at rest and in transit, audit logging that captures PHI reads and not only writes, role-based access a compliance officer can independently test, and a clear policy on PHI in development and staging environments, which is where most leaks actually happen. Ask specifically about the dev environment question: it separates teams who have shipped healthcare software from teams who have read about it.
Can we migrate our existing authorization spreadsheet into a new system without losing history?
Yes, and the spreadsheet is usually the best specification you have. Migration means mapping each column to a structured field, which surfaces the ambiguities your team has been resolving by memory, for example whether a cycle count means administrations or calendar cycles. Expect two to three weeks of the project for data cleanup and mapping on a mature tracker, and expect to find records that cannot be reconciled, which is itself useful information about where your process leaks.
Will custom software actually reduce our drug denial rate?
It reduces the denials caused by preventable process failures: authorizations that expired mid-cycle, doses administered outside the approved band after a reduction, and J-code units that undercount because waste was not documented at the pump. That is where the bulk of them sit in the groups we have audited. It will not help with medical necessity denials, which are a clinical and contracting problem. Above 6 percent on drug claims is where we reliably start finding preventable causes once the data is visible by regimen and payer.
Where does AI genuinely help an oncology practice versus where is it hype?
It helps concretely in three places: extracting structured data from payer approval letters and faxes that arrive in dozens of layouts, forecasting drug demand against your confirmed schedule while learning your actual no-show pattern by site and day, and converting free-text or voice symptom reports into graded structured summaries for triage. It does not make clinical decisions and should not be sold to you as doing so. The value is that it removes transcription work and delivers context, not that it replaces judgment.
How do we know when we have outgrown off-the-shelf oncology tools?
The clearest signal is a spreadsheet your practice would stop functioning without, because that spreadsheet exists precisely where your software cannot hold the shape of your business. Other reliable signals: routine undocumented drug transfers between sites, inventory above $400k with no visibility into what is aging out, a drug denial rate over 6 percent your billing company cannot break down by regimen, and hiring another authorization coordinator instead of fixing the queue. Below roughly six infusion chairs at a single site with one dominant payer, off-the-shelf is the right call.
How many SaaS seats do we need before building custom becomes cheaper?
The crossover usually shows up between 20 and 50 seats on premium tiers. Salesforce Enterprise lists at $165 per user per month, so 40 users cost about $79,000 a year in subscriptions, which is real money against a custom system you would own outright. Run the comparison over three years: if subscription spend beats the build cost plus 15-20% annual maintenance, custom wins on price before you even count workflow fit.
What happens to my software if the agency shuts down or we stop working together?
Nothing dramatic, if the engagement was set up correctly: the code sits in your repository, hosting runs on your cloud account, and a handover document explains how to deploy and operate the system. Any competent replacement team can then take over in days rather than months. If the agency controls the repo, the servers, or the domain, fix that now, because renegotiating access during a dispute is the most expensive place to discover the problem.
We run everything on spreadsheets and Airtable. How do we know it's time for custom software?
The reliable signals are re-typing the same data into multiple tools, one employee acting as human middleware between systems, and errors appearing in handoffs between teams. Hard limits force the issue too: Airtable's Team plan caps at 50,000 records per base, and Business costs $45 per seat per month, so a 20-person team pays about $10,800 a year for a tool it has already outgrown. When workarounds consume more hours than the tools save, the spreadsheet era is over.
Can I build my product on a no-code tool like Bubble instead of hiring developers?
For testing whether anyone wants the product, yes, and Bubble's paid plans start at $29 a month, which is the cheapest validation you will ever buy. The ceiling arrives with complex data relationships, heavy integrations, performance at a few thousand users, and the fact that you cannot export a Bubble app to servers you control. A path many Digital Heroes clients take: prove demand on no-code, then rebuild custom once revenue justifies it, treating the no-code version as a paid prototype rather than a foundation.
What should I have ready before I contact a development agency?
Three things, none of them technical: a one-page description of the problem in your own words, a list of the tools and spreadsheets the new system must replace or connect to, and a must-have versus nice-to-have split of features. Add a budget range, even a wide one, because it changes the conversation from fantasy to engineering. You do not need a formal specification; producing that is what a discovery phase is for.
If an agency builds my software, who actually owns the code?
You should own everything, assigned in writing: the contract transfers full IP to you on final payment, the code lives in your GitHub organization, and hosting runs in cloud accounts you control. The red flag is a proposal that mentions the agency's proprietary platform or framework, which usually means you are renting, not buying. Digital Heroes structures every build this way precisely so a client can fire us and lose nothing but the relationship.
We run everything on Airtable and spreadsheets. When is it time to go custom?
The switch usually makes sense when you hit one of two walls: Airtable's record caps (125,000 records per base on the Business plan) or logic the tool cannot express, like multi-step approvals with conditional pricing. There is also a simple cost signal: 25 people on Business at roughly $45 per seat per month is about $13,500 a year, forever, for a tool you are already fighting. Custom is worth it when the workflow is core to how you make money; for peripheral processes, staying on Airtable is the right call.
Is a solo freelancer enough for my project, or do I really need an agency?
A solo freelancer is a fine choice for a well-defined build under roughly $15,000 to $20,000 with a limited lifespan: an internal calculator, a scripted integration, a prototype. Above $50,000, or for any system your business will depend on for years, you are buying continuity as much as code: enforced code review, cover when someone is ill, and support that outlasts one person's career plans. Price the risk of a single point of failure, not just the hourly rate.
Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?