I fell down a rabbit hole recently, and it wasn’t a cool one like reverse-engineering a protocol or digging through a framework’s source. It was tax code. Specifically: the Reddit threads where founders post their tax bills after a year of heavy software development spending, and the top-voted answer is some version of “yes, software development is tax deductible.”
That answer is technically true and completely unhelpful. It’s like saying a breaking change “still compiles.” Sure. But your build is on fire.
Starting with tax years that began after December 31, 2021, “is it deductible” is the wrong question. Before that change, the US had allowed immediate expensing of R&D costs since 1954, which is why decades of accumulated community advice said “just deduct it.” Under Section 174 as amended by the Tax Cuts and Jobs Act, most software development costs are still deductible in a loose sense, but they must be capitalized and amortized: over 5 years for domestic research, and 15 years for foreign research. Yes, 15. If your dev team is offshore, that’s the number nobody in the thread mentioned, and it’s rough.
So the real questions are: when does the deduction actually hit your return, and does the work meet the legal definition of research for the R&D credit? Those are the questions this article answers, checking five claim archetypes that circulate constantly against the actual record: IRS Notice 2023-63, the Research Credit Audit Techniques Guide, and Section 41’s credit mechanics. Two sleeper details the forums almost never touch: that 15-year foreign tier, and the fact that the IRS has published a list of which software activities usually fail an audit.
Key Takeaways
For tax years that started after December 31, 2021, software development costs must be capitalized under Section 174 and amortized over 5 years (domestic) or 15 years (foreign); only about 10% of domestic spend for the year reaches the first return because of the mid-year convention.
IRS Notice 2023-63 (September 2023) lists what must be capitalized: planning, requirements documentation, design, coding, and enhancements, while marketing, distribution, customer support, and certain internal-use costs stay deductible.
The R&D credit under Section 41 still applies, but it’s a partial offset: 14% of QREs above 50% of the prior three-year average, with contractor money counting at only 65%.
Table of Contents
What Reddit says vs. what the tax code actually says
What Reddit threads get wrong is the conflation of two separate tax regimes and the yes/no framing of a timing question. Section 174 says software research expenditures have to be capitalized and amortized; Section 41 grants a tax credit only for qualifying research that passes a four-part test. Both can apply to the same dollar, which is exactly the part the forums blend into a single “it’s deductible” blob. Here’s the claim-vs-reality rundown:
| Community claim | What the authorities actually say |
|---|---|
| “Still fully deductible” | Capitalized and amortized: 5 years domestic, 15 foreign |
| “Everything I spend is hit” | Carve-outs exist: post-sale-ready costs and certain internal-use costs stay deductible |
| “Contractor invoices are simple deductions” | Depends on contract structure: who bears financial risk and who keeps rights |
| “All coding is R&D” | Four-part test plus the IRS’s published high-risk activity list |
| “Just claim the credit” | Partial offset only, with a new documentation burden starting tax year 2025 |
Part of the confusion has an understandable cause: as of January 2023, the IRS had issued no guidance at all on the new Section 174 requirements. Notice 2023-63, issued in September 2023, finally filled that gap. The full timeline comes later in this piece, but the short version is that the threads spent months arguing without the spec.
Myth: “Dev costs are still fully deductible like they always were”
This is the most confidently repeated claim in the threads, and it’s the one with the widest gap between what founders expect and what the code now does. The deduction didn’t disappear; it got put on a payment plan. The subsections below walk through what Section 174 requires now and what that does to bootstrapped cash flow.
What Section 174 actually requires now
Yes, software development labor is still deductible, but not the way the Reddit answer means it. For tax years that started after December 31, 2021, Section 174 requires you to capitalize software research expenditures and amortize them over 5 years for domestic research or 15 years for foreign research. Before TCJA, immediate deduction had been the rule since 1954. That’s a seventy-year-old patch that silently got reverted, and the accumulated community advice went stale along with it.
Field note: Immediate expensing ended for tax years after December 31, 2021. Capitalize and amortize domestic spend over 5 years, foreign over 15.
The mid-year convention makes it worse in year one: the five-year amortization starts with only a half-year, so roughly 10% of a domestic year’s spend actually shows up on your first return. And that 15-year foreign tier? That’s the sleeper detail. If your team is distributed or offshore, your deductions arrive four times slower than the threads told you. No offshore structuring advice from me here; just know the rule.
The bootstrapped cash-flow math Reddit’s answer hides
The bill goes up because only about 10% of the year’s spend subject to amortization is deductible in year one. Here’s the widely circulated worked example from a Hacker News thread posted February 2, 2023, which racked up 298 points and 187 comments, so the pain is broadly felt, not one founder’s bad year:
- You have $100k income and $90k of software development spend.
- Actual profit: $10k.
- Taxable profit: $91k, because only about 10% of that $90k (call it $9k) deducts in year one, leaving $81k of the spend plus the $10k profit on your return.
- At a 30% rate, that’s roughly $27k in tax. On $10k of actual profit.
Walk that slowly. The company made money but owes nearly three times its profit. The community heuristic that fell out of these threads: set aside roughly 30-plus cents in tax for every software dollar you spend. Treat it as a rule of thumb, not gospel.
The honest reassurance: amortization evens out within four to five years for continuous spenders, since each year adds a new layer while old layers keep deducting. The pain is front-loaded, not permanent. And capitalized costs can still earn R&D credits in the year the work happens. Capitalized doesn’t mean credit-ineligible.
What Notice 2023-63 actually capitalizes and what it carves out
Notice 2023-63 is the IRS’s September 2023 guidance on how Section 174 capitalization applies to software development. This is the screenshot section, because the notice names the activities directly.

Costs you must capitalize:
- Planning software development. Yes, even the whiteboard phase counts.
- Documenting software requirements. Your spec docs are now part of your tax basis, weirdly.
- Designing and building a software model. Prototypes and architecture work are in scope.
- Writing code. The obvious activity, and the punchline of the whole rule: coding gets capitalized, not deducted.
- Enhancements that add functionality or efficiency. That feature sprint is not a simple expense anymore.
Costs once the software is market-ready: marketing, distribution, and customer support don’t need capitalizing. Once the product is ready to be sold or licensed, later costs stay deductible, for practical filing guidance on where capitalization thresholds end. The hidden burden here: you’re expected to document the split between pre- and post-sale-ready periods, and most founders have never tracked that line. Your invoices and commit history are the evidence.
Internal-use carve-outs: for software built for your own business use, employee training, maintenance, and data entry costs are excluded from software development tax treatment. Small wins, but worth knowing.
On applicability, two dates and one rule: the notice applies to tax years ending after September 8, 2023, and taxpayers may rely on it for tax years starting after December 31, 2021, as long as they apply it consistently. Consistently is the operative word, flag it like a config requirement. And since the notice previews proposed regulations to come, treat it as a beta, not a final release.
Myth: “Contractor and agency invoices are simple deductions”
Yes, amounts paid to third-party contractors and affiliates for qualifying development are generally capitalizable by the payer. Hiring out doesn’t dodge the rule.
Then it gets two-sided, because the contractor’s own treatment flips on two factors. A researcher who gets paid regardless of success doesn’t have to capitalize its own costs. But one that bears financial risk in the research or retains rights to use or exploit the results must capitalize on its own side. Contingent compensation or kept IP flips it; limiting rights to the results avoids it. In other words, the contract terms literally change the tax treatment.
Quick test: Check whether the contractor bears financial risk or retains rights to the results. If yes, they capitalize on their own side — and your contract language triggered it.
That’s the lever forum advice never mentions. Standard MSA language granting IP rights or success-fee compensation can silently move a contractor onto the capitalization side. It’s a pattern practitioners flag, and worth checking your own agreements against.
One honest gap: the notice is silent on cost-sharing among affiliates and joint ventures, and further guidance is forthcoming. Nobody’s written the docs for this one yet.
Myth: “All coding counts as R&D”
Writing code is an activity; qualified research is a legal status, and the threads treat the two as the same thing. The credit only lands if the work passes the four-part test under I.R.C. § 41(d)(4), survives four statutory exclusions, and rests on technical uncertainty rather than business difficulty. Each gate gets covered below, along with the extra scrutiny internal-use software attracts.

The four-part test, in plain terms
Section 41 qualified research has to pass four parts under I.R.C. § 41(d)(1)(C) and Treas. Reg. § 1.41-4: permitted purpose, technological in nature, elimination of uncertainty, and process of experimentation. Two nuances collapse most of the community’s misconceptions. First, techniques need only be new to the taxpayer, not the world.
You don’t have to be inventing cryptography; you just can’t have known the answer already. Second, the process of experimentation requires an evaluative process comparing alternatives, fundamentally relying on physical sciences, engineering, or computer science principles, per the 1986 legislative history (H.R. Conf. Rep. No. 99-841) and T.D. 9104 (January 2, 2004).
In dev terms: show your work, a lab notebook, but for code, recording the uncertainty you identified, the alternatives you tried, and how you evaluated them.
You’re the one who has to demonstrate all this, and nothing, including software development, automatically qualifies. But there’s a genuinely lower bar than people fear: you don’t need capability or method uncertainty if the right design was uncertain at the start.
What the statutory exclusions rule out
Four exclusions, each named, each with a sting:
- Research after commercial production begins. Preproduction planning, tooling up, trial runs, production troubleshooting, and debugging business-component flaws are deemed post-production. Once you’re shipping, it’s not R&D anymore.
- Adaptation to a customer’s requirement. Customizing an existing component for one customer’s need isn’t qualified research, which is structurally bad news for client and agency work. The nuance: building for a specific customer doesn’t disqualify by itself. The adaptation is what matters, not the target.
- Duplication from examination of an existing component. Copying isn’t research. But evaluating someone else’s component during your own development doesn’t trigger the exclusion. Looking at how others did it is fine.
- Management functions, efficiency surveys, market research, routine data collection and testing, and social sciences, arts, and humanities. The business-stuff bucket.
Why internal-use software gets extra scrutiny
Software built for your own use has to pass the HTI test on top of the four-part test: innovation, significant economic risk, and non-commercial availability, per REG-153656-03 (January 2, 2004). The IRS has increased scrutiny of internal-use claims, which lands directly on SaaS founders writing proprietary tools. External-use software, customer-facing stuff, gets the standard four-part test.
Hard problem isn’t the same as technical uncertainty
Business uncertainty (will customers like it? are you competitive?) and project uncertainty (schedule, budget, training) never qualify. Only technical uncertainty counts, and configuration uncertainty alone proves nothing; what you actually did is what counts.
The Audit Techniques Guide’s paired examples make this concrete, and they echo the flip side of the tax-software question whether you can write off tax software on your taxes at all. Tax software that updated its tables and forms: no. The same product developing encryption algorithms for e-filing: potentially yes. An antivirus with modified scan-scheduling screens: no. Heuristic algorithms to detect new viruses: potentially yes. Same app, different questions asked.
And the guide’s thought experiment that kills the “any dev work is R&D” claim: ten engineers asked to write a payroll program would likely produce ten different programs. Design variability is not experimentation. It stings a little that most software projects fail for exactly the business reasons (changing requirements, missing user input, unrealistic expectations) that don’t count as R&D uncertainty, but that’s the bar.
The IRS’s own list of what usually fails an audit
The activities that usually fail are the ones forum advice most often recommends claiming: maintenance, debugging, porting, vendor selection, GUI design. Even bundling separate apps into a single suite lands on the list.

The Research Credit Audit Techniques Guide sorts software development activities into three tiers: high risk means activities usually fail to constitute qualified research, moderate means they often fail, and low means they rarely fail. It’s an audit resource-allocation tool, so the IRS can focus limited time on the riskiest claims. Two caveats the guide states itself: it’s not an official pronouncement of law, and nothing precludes an examiner from proposing adjustments for anything, even activities not on the high-risk list. Treat the tiers as a map, not the terrain.
High-risk, usually fails (the “sorry, no” column):
- Maintenance of existing software: corrective, adaptive, perfective; minor releases like 1.1, 1.2, 2.4, 3.2; patch releases
- Application configuration: chart of accounts, user counts, access privileges, payroll report access
- Reverse engineering
- Vendor selection studies (the guide literally names Oracle vs. DB2, SAP/Oracle/PeopleSoft, WebLogic vs. WebSphere)
- Debugging and routine testing
- Standards, device compliance, and vendor certification work
- Cloning similar products
- Upgrades and fix installs
- Porting and rehosting (mainframe to PC, Windows to UNIX) and language rewrites (COBOL to C++)
- Device drivers
- Data cleansing and conversion (EBCDIC-to-ASCII, Y2K-style remediation per Rev. Proc. 97-50)
- Product bundling
- Purchased-product integration
- Interface development
- Vendor API extensions
- Adding an Internet browser interface to a PC tax application, or inventory software talking to warehouse software
- GUI screen design
Moderate-risk, often fails, genuinely fact-dependent: functional enhancements requiring architecture changes, and embedded software (phones, automobiles, airplanes) with their small-screen and constraint uncertainties.
Low-risk, rarely fails (the “frequently qualifies” column):
- Initial releases requiring new architectures, algorithms, or database techniques
- System software: operating systems, compilers, scheduling, memory management, optimization
- Specialized technologies: image processing, AI, speech recognition, as specific fields, not “AI-powered” hand-waving
- Concurrent hardware/software design with performance benchmarks
The fun part is the counterexamples hiding inside the non-qualifying categories. Data recovery of a deleted file whose disk space got reused can involve genuinely qualifying uncertainty. A mainframe-to-grid migration that’s really a rebuild can count. Commercializing consortium-defined models can involve real research. The guide pairs these qualifying and non-qualifying examples side by side, and they’re the clearest teaching tool in the whole document.
The contrarian payoff, stated once: debugging sprints, maintenance sprints, API integrations, and porting, the activities Reddit most often advises claiming, sit on the IRS’s published high-risk list.
The R&D credit: partial relief, not a fix
The R&D tax credit still applies to software development after the Section 174 change. Section 41 survived TCJA unchanged, and it’s a partial offset, not a dollar-for-dollar fix. A 14% ASC rate against a roughly 30-cent-per-dollar reserve narrows the gap. It doesn’t close it.

ASC mechanics:
- 14% of QREs exceeding 50% of the prior three-year average, or 6% of current-year QREs if you have no credit history.
- QREs are qualified wages, supplies, and 65% of contract research. Contractor money counts at a discount; flag that if you’re outsourced-heavy.
- Qualification turns on technical uncertainty and a systematic process of experimentation, not on the project succeeding. Failed experiments can still count, which is genuinely good news.
- Commercial products and proprietary internal tools both qualify, including incremental improvements.
The FICA offset for startups: qualified small businesses, meaning $5M or less in gross receipts and five years old or younger, can apply up to $500,000 per year of credits against payroll taxes. For pre-profit companies with no taxable income to offset, this is the version of the credit that actually helps. Many states have their own credits too, some refundable; check your state’s specifics.
Section G: beginning tax year 2025, Form 6765 Section G requires classifying the type of software development at filing. That requirement is in effect now. The IRS also expects contemporaneous records: payroll time allocation, project descriptions tied to technical objectives, source code commit logs, and records of uncertainties addressed. Frame it however you like, but your git history is now evidence. Keep it.
Traps nobody on Reddit mentions
The forum threads stop at “is it deductible,” but the expensive edge cases live past that question. Selling your product, winding down the company, trusting legacy safe-harbor guidance, or buying enterprise software all come with rules the community never mentions. Consider this the section of the docs nobody opens until production breaks.
Selling the product doesn’t close the tax story
Selling developed IP triggers income recognition with no offset against unamortized Section 174 expenditures, and the remaining balance keeps amortizing on the original 5- or 15-year schedule. This hits tech and life sciences companies that sell IP hardest, and it’s counterintuitive: you’d assume closing out the product closes out the tax treatment. Corporate cessation has its own rules: in tax-deferred liquidations, contributions to controlled corporations, or reorganizations, the successor inherits the amortization schedule. Otherwise, a ceasing corporation may deduct the remainder.
But the special rules don’t apply to partnerships, so if you’re an LLC taxed as a partnership, that branch is closed to you. It’s worse there, plainly stated.
Stale safe-harbor advice: Rev. Proc. 2000-50
Rev. Proc. 2000-50 is the legacy guidance: pre-TCJA docs that still compile. It defines software as machine-readable code plus documentation and offers safe harbors of current deduction, 60-month amortization from completion, or 36 months from placement in service. Some taxpayers still claim it allows deducting all software costs currently. CCA 201549024, released December 2015 and non-precedential, explicitly cautioned against that. The safe harbor is not a cheat code.
Bought and ERP software isn’t treated like your own code
Letter Ruling 200236028 handles the enterprise-system case: ERP acquisition costs get capitalized under § 263(a) and amortized over 36 months under § 167(f). Costs for option selection and embedded templates ride along with the purchased software. Separately stated acquired software amortizes over 36 months, and software bundled into hardware depreciates with the hardware. One narrow deduction path survives: consulting costs for writing machine-readable code can be deducted right away when the taxpayer alone is responsible for the project.
Line-item your invoices. It changes the treatment.
Will Section 174 be repealed, and why the confusion lasted so long
Don’t plan around repeal. Members of Congress from both parties have publicly backed repealing the SRE capitalization rules, but no legislation has been enacted. Meanwhile the IRS keeps building on the capitalization regime. Notice 2023-63 previews proposed regulations. The fix is popular and still stuck, like a patch that keeps slipping.
The confusion itself has a traceable history. The final § 263(a) intangible regulations issued January 5, 2004 deferred software issues to separate guidance, a long-running TODO in the tax code. Between Rev. Proc. 2000-50 and the 2021 changes, Treasury and the IRS issued almost nothing on software development costs. As of January 2023 there was still nothing.
Notice 2023-63 in September 2023 finally filled the gap. Two years of threads arguing without the spec explains a lot of the disagreement.
What to actually do: a reality-based checklist
- Start documentation contemporaneously, not at filing time: payroll time allocation, project descriptions tied to technical objectives, commit logs, and records of uncertainties addressed.
- Begin cost allocation across the sale-readiness threshold now, so the pre- and post-sale-ready split is documented before you need it.
- Sort your engineering work against the Audit Techniques Guide tiers before claiming anything, and check contractor arrangements against the risk and rights factors.
- If a method change is relevant, adopting a Rev. Proc. 2000-50 method counts as an accounting method change under Sections 446 and 481, doable via automatic-consent Form 3115 under Rev. Procs. 2015-13 and 2015-14 Section 9.01. No advance IRS blessing needed. Think of it as the migration script.
Close with the honest version: these are facts-and-circumstances determinations, and the right next step is a qualified tax adviser who has seen your actual books. This article gets you to the meeting knowing which questions to ask, which, given how the forum answers go, might be the more valuable half.
People Also Ask
Is software development tax deductible?
Yes, but not the way most forum answers mean it. For tax years that started after December 31, 2021, Section 174 requires most software development costs to be capitalized and amortized — over 5 years for domestic research and 15 years for foreign research. The deduction still exists; it just arrives on a multi-year payment plan instead of all at once.
Why did my tax bill go up after spending most of my revenue on software development?
Because only about 10% of that year’s capitalized spend deducts in year one. In the widely circulated example: $100k income with $90k of dev spend shows $91k of taxable profit instead of $10k, which at a 30% rate is roughly $27k in tax on $10k of actual profit. The pain is front-loaded — amortization evens out within four to five years for continuous spenders.
What do Reddit threads get wrong about Section 174 software development capitalization?
They conflate two separate regimes into one ‘it’s deductible’ blob. Section 174 forces capitalization and amortization; Section 41 grants a credit only for work passing the four-part qualified research test — and both can apply to the same dollar. The threads also miss the 15-year foreign tier, the contractor risk-and-rights flip, and the IRS’s published list of activities that usually fail an audit.
