Industry guide · Custom Software

State Tax Revenue Administration Software: Why Every Legislative Session Breaks Your Rate Tables

State Tax Administration software visual showing institution, file stack, and performance chart.
The short answer

$150,000 to $350,000 for a targeted component in 16 to 24 weeks, and $500,000 to $1.5M for a multi component program phased over 12 to 24 months is the range where custom work makes sense at a state department of revenue. Here is the part most agencies will not say out loud: replacing an integrated tax system across every tax type is a program measured in years and tens of millions, and Fast Enterprises, Revenue Solutions and their peers are the right vendors for that. Custom is justified for the surround, meaning the taxpayer portal, a versioned rules service, audit selection analytics you can actually inspect, data exchange with other agencies, and modernising one tax type ahead of the rest. It is not justified as a cheaper way to replace GenTax, and anyone telling you otherwise has not sat through a filing season.

Why a revenue system is a time machine, not a database

The thing that makes tax administration different from every other large government system is that you are permanently operating in several years at once. Today your call centre is answering questions about a return filed for a period three years ago, your audit division is assessing a period five years back, your appeals unit is defending a position taken under a statute that has since been amended twice, and your processing team is accepting current period returns under rules that took effect in January. Every one of those conversations requires the law as it existed for that period, not the law as it exists now.

A commercial billing system stores the current price list. A revenue system has to store every price list that has ever existed, know which one applies to which period, and reproduce a calculation from any of them on demand, in front of an administrative law judge, with the derivation visible. When a system cannot do that, staff rebuild the old calculation in a spreadsheet using a printed copy of the repealed rule, and then the department's position in an appeal rests on a spreadsheet.

That is the design constraint that shapes everything else. Rate tables, bracket definitions, nexus thresholds, credit eligibility, apportionment formulas, penalty and interest rules, and the definitions of taxable base all have effective dates, and some of them are amended retroactively. A retroactive amendment means recomputing periods already assessed and already collected, generating refunds or supplemental assessments, and doing so in a way that survives review. Systems that treat rules as configuration to be updated in place cannot do this at all, which is why legacy revenue systems accumulate a shadow layer of manual work that nobody documents.

Problem 1: one taxpayer, many accounts, many clocks

A mid size business in your state might have a withholding account filing monthly, a sales tax account filing monthly with a prepayment requirement, a corporate income account filing annually with quarterly estimates, an unemployment account handled by a different agency entirely, and a fuel or excise account with its own schedule. Each account has its own filing frequency, its own due dates, its own penalty rules and its own statute of limitations clock.

The taxpayer, reasonably, thinks of themselves as one entity. Your staff needs a single view: everything this taxpayer owes, everything they have overpaid, every open period, every audit, every protest, every payment plan, and the netting relationships between them. That single view is the feature every department of revenue asks for and the one that legacy systems, organised by tax type because that is how the divisions were organised in 1988, structurally cannot provide.

The identity work underneath is harder than it sounds. Entities merge, reorganise, change federal identification numbers, operate through disregarded entities, and register locations that come and go. Responsible party liability means an individual can be attached to a business's debt. Getting the entity graph right, with effective dated relationships, is the foundation. Build it wrong and every downstream feature inherits the error, including the offsets that take money from a real person.

Problem 2: audit selection is a scoring problem, and the black box is the objection

Your audit division has finite auditors and a large population of returns. Selection determines yield, and yield determines whether the division justifies its budget. Most departments run a mix of rule based flags, a legacy scoring model nobody has re estimated in years, and analyst judgement.

Packaged systems and analytics vendors sell selection models, and the models are often genuinely useful. The problem is inspectability. When a taxpayer's representative asks why their client was selected, and when your own leadership asks why the model's yield dropped this year, you need to be able to open the thing. A score with no explanation is a governance problem before it is a technical one, and it is also how a division ends up auditing the same industry repeatedly because a feature in the model is a proxy for something nobody intended.

What custom work does well here is build selection as an auditable pipeline the department owns. Features are defined in code you can read, the model version used to select each case is recorded with the case, and every selection carries an explanation of the top contributing factors. You should also be able to hold out a random control sample and measure the model against it, because without a control you cannot tell whether your model is good or whether it is just selecting the cases your auditors were already going to find. This is the single most defensible place to spend money on analytics in a revenue agency.

Problem 3: protests, payment plans and offsets are workflows that cross agencies

An assessment issues. The taxpayer protests within the statutory window. The protest suspends collection on the disputed portion but not the undisputed portion, and interest continues to run under rules that may differ between the two. Meanwhile the taxpayer has a payment plan on an older period, a refund due on a newer one, and a debt referred from another agency that your department is required to offset against any refund.

Each of those interactions is a rule, and together they are why the collections side of a revenue agency runs on institutional memory. Nobody can hold the whole matrix, so staff make a judgement, and inconsistency between staff becomes an equal treatment problem when a taxpayer's representative compares two cases.

The build pattern is to make the account state machine explicit. A period has a status, a protest has a status, a plan has a status, and the rules for what each combination permits are encoded and testable rather than remembered. Offset participation, whether you are the offsetting agency or the referring one, is an interface with its own reconciliation, because the money moves and both sides have to agree it moved. When these are explicit, the call centre can answer accurately without escalating, which is where the operational saving actually comes from.

Problem 4: federal tax information safeguards shape the architecture, not just the network

If your department receives federal tax information from the IRS, and most do, IRS Publication 1075 sets the safeguard requirements for handling it. That is a real constraint with real architectural consequences: where the data may live, who may access it, how access is logged, how it is segregated from other data, what happens in a cloud environment, and what your agency has to be able to demonstrate on a safeguard review.

The common failure is treating this as an infrastructure checklist handed to the network team after the application design is settled. It is not. Segregation and logging obligations affect how you model data, how you build reporting, how developers get access to production like data for debugging, and how you run a data warehouse. Retrofitting is expensive and sometimes forces a redesign of the analytics layer.

Design for it from the first sprint: tag data at the field level by classification, make access logging a property of the data layer rather than something each screen implements, and build a synthetic data generator so developers never need production data to reproduce a defect. Your safeguard reviewer will ask for evidence, and evidence produced by the system beats evidence assembled by a person.

Problem 5: the taxpayer portal is where the department is judged

Legislators and business associations do not experience your assessment engine. They experience filing a return, making a payment, registering a new location, and trying to understand a notice. Legacy portals are usually a thin front end over a mainframe transaction, which means they can display a balance but cannot explain it, and they time out during filing season peaks because they are executing against the system of record synchronously.

A modern portal built as a separate application with its own read models solves both problems. It can show a taxpayer the derivation of a notice, meaning the return as filed, the adjustment made, the rule applied with its effective date, and the resulting balance with penalty and interest itemised, which removes a substantial share of call volume. It absorbs peak load without touching the core, because it is reading a projection that updates asynchronously. And it can be built and shipped in months rather than as part of a multi year replacement, which matters when your commissioner needs a visible improvement before the next session.

What this costs and how long it takes, honestly

From the public sector work Digital Heroes has delivered, a targeted component runs $150,000 to $350,000 and ships in 16 to 24 weeks. Examples of a component: a taxpayer portal with filing and payment for one or two tax types, a versioned rules service that other systems call, an audit selection pipeline with explainability and a control sample, or an inter agency data exchange with reconciliation. A program of several components, sequenced so each delivers value on its own, runs $500,000 to $1.5M over 12 to 24 months.

We do not bid full integrated tax system replacements, and you should be suspicious of a firm our size that does. Those programs cost tens of millions, run for years, and carry conversion risk across every tax type and every open period simultaneously. Fast Enterprises GenTax, Revenue Solutions and the other specialists have done dozens of them and carry the domain libraries that make it feasible. Sovos occupies a different slot again, strongest on determination and compliance content rather than agency administration.

What drives cost in this environment: the number of tax types in scope, because each carries its own forms, schedules and rules; the state of your legacy interfaces, since a mainframe with no documented API is a project by itself; safeguard requirements for federal tax information; accessibility conformance, which state policy usually mandates; and the availability of your own subject matter experts, who are the scarcest resource in any revenue modernisation and are also doing their day jobs during filing season.

Build versus buy, and where the line actually falls

Buy the core. If your integrated tax system is genuinely at end of life across all tax types, run a proper procurement with the specialists. The domain content they bring, decades of encoded rules across many states, is not something you should pay anyone to rediscover.

Build the surround. That is where the packaged products are weakest and where your department's specific needs are strongest. The taxpayer portal, because your taxpayers are your constituency. Audit selection, because a black box you cannot explain is a liability and yield is your division's justification. Data exchange with other agencies, because those interfaces are unique to your state's structure. Reporting and the warehouse, because you should not need a vendor ticket to answer a legislative question during session. And a rules service for a tax type undergoing heavy legislative churn, so changes ship in weeks rather than in the vendor's release cadence.

Build a tax type when the sequencing argument holds. If one tax is small, self contained and changing rapidly, delivering it on modern infrastructure first proves the pattern, gives the department a working example to point at, and reduces the scope of the eventual core replacement. That is a legitimate strategy, but it only works if the entity model and the rules service are shared, otherwise you have built a second silo and made the problem worse.

How to choose a developer for revenue systems work

Ask them how they would handle a retroactive rate change enacted in March, effective to January of the prior year, affecting returns already filed and assessments already issued. A team that belongs in this work will talk about versioned rules keyed to tax period, recomputation as a new version rather than an overwrite, and a reconciliation report showing every account affected and the direction of the change. A team that does not will describe updating a configuration table.

Ask what they will do about federal tax information safeguards, and expect the answer in the first design conversation, not the security review. Field level classification, data layer access logging and synthetic test data are the markers of someone who has done it.

Ask how audit selection explanations are produced. If the answer is a model score with no per case explanation and no control sample, the department will not be able to defend it, and you will inherit that argument.

Ask about their integration record against legacy systems specifically: mainframe file exchange, batch windows, and the reality that the system of record cannot be modified. Building next to something you cannot change is a distinct discipline.

Ask who owns the code, the repositories and the cloud accounts, and settle it before kickoff. Digital Heroes hands all three to the client from the first commit. In a revenue agency this is not a preference, it is continuity: your components will outlive several procurement cycles and the department has to be able to maintain them without asking permission.

Research & sources

The evidence behind this guide

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

  1. The Standish Group 1995 CHAOS Report found only 16.2% of software projects fully succeeded; success varied sharply by size, with large-company projects succeeding about 9% of the time versus far higher rates for small projects - best treated as an industry survey, not an audited dataset. Source: Standish Group (1995) →
  2. Companies in the top quartile of McKinsey's Developer Velocity Index had 2014-18 revenue growth four to five times faster than bottom-quartile peers, showing that software-building capability is a driver of business performance, not just a support function. Source: McKinsey & Company (2020) →
  3. In an RCT, the no-show rate was 23.5% for patients receiving a text-message reminder versus 38.1% for the control group - a 14.6 percentage-point reduction (p = 0.04). Source: Clinical Pediatrics / PubMed Central (Lin et al.) (2016) →
  4. SaaS spend averaged $4,830 per employee (up 21.9% year over year), with large enterprises (10,000+ employees) spending roughly $284M annually and running about 660 apps, while organizations wasted an average of $21M annually on unused licenses. Source: Zylo (2025) →
Shreyansh S. · Managing Director · Lucknow

Shreyansh runs the Lucknow operation, sitting between clients who need software built and the teams who build it. Most of his week goes on scoping work honestly, deciding what a project should and should not include, and keeping delivery promises realistic. He writes for readers weighing up whether to commission custom software at all.

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

FAQ

Frequently asked questions

Can a small firm replace our integrated tax system for less than the big vendors quote?
No, and be suspicious of anyone who says yes. A full replacement across every tax type carries conversion risk on every open period simultaneously, runs for years, and depends on decades of encoded rules that specialists like Fast Enterprises and Revenue Solutions already carry. Where an independent firm earns its place is the surround: the taxpayer portal, a versioned rules service, audit selection you can explain, and inter agency data exchange, each delivered in months at $150,000 to $350,000 per component.
How do you build a rules engine that can reproduce law from five years ago?
Store rules as versioned objects keyed to tax period with effective and end dates, and evaluate every calculation against the version in force for the period being computed rather than the version in force today. Recomputation after a retroactive amendment produces a new version alongside the old one, so the difference is the assessment or refund and the history stays intact. That structure is what lets you show a derivation to an administrative law judge instead of rebuilding it in a spreadsheet from a printed rule.
What does IRS Publication 1075 change about how the system is designed?
It changes the architecture, not just the network configuration. Where federal tax information may live, who may access it, how access is logged, and how it is segregated all affect data modelling, reporting design and how developers debug production issues. Handle it from the first sprint with field level classification, access logging built into the data layer rather than into each screen, and a synthetic data generator so nobody needs production data to reproduce a defect. Retrofitting usually forces a redesign of the analytics layer.
Why does our department need one taxpayer view and why is it so hard?
Because a business holds several accounts with different filing frequencies, due dates, penalty rules and limitation clocks, while legacy systems are organised by tax type because the divisions were. The hard part underneath is the entity graph: mergers, reorganisations, changed federal identification numbers, disregarded entities and responsible party liability, all of which need effective dated relationships. Get that model wrong and every downstream feature inherits the error, including offsets that take money from a real person.
Is machine learning worth using for audit selection at a state revenue agency?
Yes, with two non negotiable conditions. Every selected case must carry an explanation of the top contributing factors, because a score you cannot open is a governance problem the moment a representative or your own leadership asks why. And you must hold out a random control sample, because without one you cannot tell whether the model is finding new yield or simply selecting the cases your auditors would have found anyway. Own the feature definitions in code your analysts can read.
How long does a taxpayer portal take to build separately from the core system?
Sixteen to 24 weeks for filing and payment on one or two tax types, built as its own application with read models that update asynchronously from the system of record. That structure is what lets it absorb filing season peaks without executing synchronously against a mainframe, and it lets you show taxpayers the derivation of a notice rather than only a balance. Explaining notices well is usually the single largest reduction in call centre volume available to a department.
What breaks when the legislature passes a change retroactive to a prior year?
Every period already filed or assessed under the old rule. You need recomputation across the affected population, a reconciliation report showing each account and the direction of the change, refunds or supplemental assessments generated with the correct interest treatment, and notices that explain the change. Systems that update rules in place cannot do this, so staff rebuild it manually and the department's litigating position ends up resting on a spreadsheet nobody has reviewed.
Should we modernise one tax type first or wait for a full replacement?
Modernising one small, self contained tax type that is changing rapidly is a legitimate strategy, and it gives the department a working example and a proven pattern before the large procurement. It only works if the entity model and the rules service are shared with what comes later. If the new tax type gets its own taxpayer identity and its own rules store, you have built a second silo and made the eventual consolidation harder rather than easier.
Who owns the code when an outside firm builds components for our department?
You should own the repositories, the cloud accounts and the right to hire another firm, agreed before kickoff. Digital Heroes transfers all three from the first commit. In a revenue agency the components you build now will outlive several procurement cycles and several administrations, so the ability to maintain them without a vendor's permission is continuity rather than a commercial preference. Write the escrow and transition obligations into the contract as well.
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.
Who owns the code when an agency builds my software?
You should, completely, through a written intellectual property assignment that transfers everything on final payment; without that clause, copyright stays with whoever wrote the code by default. Insist that the repository lives in your own GitHub organization from day one and that hosting, domains, and third-party accounts are registered to you. Also check for licenses to the agency's proprietary frameworks buried in the contract, because those can make switching vendors practically impossible even when you own your own code.
Does the tech stack matter, and which one should I ask for?
It matters less than agencies imply, provided it is boring. A mainstream stack, something like React or Next.js on the front end, Node.js or Python behind it, and PostgreSQL for data, means thousands of developers can maintain your system if you ever change vendors. Apply one test: ask how hard it would be to hire a replacement developer for the proposed stack, and walk away from anything built on an agency's in-house framework.
How do we get years of data out of our old system and into the new one?
Treat migration as a planned sub-project: a field-mapping document, at least one dry run on a copy of your data, then a cutover with the old system kept read-only for 30 days as a safety net. On Digital Heroes projects it consumes 10 to 15% of the budget when the old system has an export, and more when data must be pulled out screen by screen. Ask any vendor to walk you through their last migration before you sign.
Couldn't I just build my app in Bubble or another no-code tool instead of hiring an agency?
For validating an idea with real users, yes, and we tell clients that honestly. The walls come later: Bubble apps cannot be exported as code to run anywhere else, performance drops on complex data operations, and usage-based pricing climbs as you grow. A meaningful share of Digital Heroes custom builds are rebuilds of no-code MVPs that proved the business worked, which is the system operating as intended: validate cheap, then build the version that scales.
Should we build an MVP first or go straight to the full system?
MVP first, for almost everyone: ship the single workflow that carries the business value in 10 to 16 weeks, learn from real users, then fund phase two from evidence instead of guesses. The caveat is that an MVP is a small version of a well-built system, not a badly built version of a big one; the data model must already support what comes next. An agency that cannot tell you what they deliberately left out of your MVP has not designed one.
What does a $50,000 custom software budget actually buy?
One core workflow done properly: 10 to 15 screens, two or three user roles, a couple of integrations, an admin panel, and automated tests, delivered in roughly 12 to 14 weeks. What it does not buy is that workflow plus a mobile app plus AI features plus five more integrations. The discipline of picking the one workflow that matters is what separates $50,000 projects that ship from $50,000 projects that stall at 70% complete.
What is a discovery phase, and is it worth paying for separately?
Pay for it, and treat the output as yours. A discovery phase runs two to three weeks, typically 5 to 10% of the eventual build budget, and produces a written scope, wireframes, and a fixed quote you can take to any vendor, including a competitor of the agency that wrote it. Skipping it is how projects end up quoted from a two-paragraph email and delivered at twice the price.
Who can build a custom software system?

Digital Heroes builds custom software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.

Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.

What makes Digital Heroes different from other software companies?

Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.

Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.

How can I check Digital Heroes is legitimate before getting in touch?

Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.

Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.

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?