SR&ED for Software Companies

Does Your Software Development Qualify for SR&ED?

Software development drew 42.6% of the SR&ED tax credits the CRA allowed in 2025-26. If your engineers solve problems where the answer isn't known in advance, some of that work probably qualifies.

Eligible vs. Ineligible Activities

The key distinction is technological uncertainty — did your team have to experiment, investigate, or try multiple approaches because the solution wasn't known?

Likely Eligible

Building a custom ML model to solve a prediction problem with no known solution

Technological uncertainty in algorithm design

Designing a novel data pipeline architecture to handle real-time processing at scale

Systematic investigation of performance constraints

Developing a new search/ranking algorithm that goes beyond existing approaches

Technological advancement beyond standard practice

Creating a custom compiler, interpreter, or domain-specific language

Fundamental computer science advancement

Engineering a multi-tenant architecture with novel isolation guarantees

Uncertainty in system design and security boundaries

Building a real-time collaboration engine (like multiplayer editing)

Conflict resolution and synchronization challenges

Likely Not Eligible

Routine bug fixes and maintenance patches

No technological uncertainty

UI/UX restyling or redesign using existing frameworks

Standard practice, not advancement

Integrating a well-documented third-party API (Stripe, Twilio)

Following established documentation

Setting up standard CI/CD pipelines with off-the-shelf tools

Routine application of known techniques

Migrating from one cloud provider to another using documented processes

No systematic investigation required

Adding CRUD operations or standard database queries

Well-established programming practice

Two developers working through code together at a laptop

SR&ED-Eligible Technology Areas

Here are common areas of software development that frequently qualify for SR&ED credits, with real-world examples of eligible work.

AI & Machine Learning

Custom model architectures, novel training approaches, NLP systems, computer vision pipelines, and reinforcement learning implementations.

  • Developing a custom transformer model for domain-specific text
  • Building a novel recommendation engine beyond collaborative filtering
  • Creating an automated labeling system using active learning

Cloud & Infrastructure

Novel distributed systems, custom orchestration, auto-scaling architectures, and edge computing solutions.

  • Designing a serverless architecture for sub-10ms response times
  • Building a custom container orchestration system
  • Creating a novel caching strategy for globally distributed data

API & System Integration

Complex system interoperability, real-time data synchronization, and novel protocol implementations.

  • Building a real-time bidirectional sync engine between heterogeneous systems
  • Developing a custom API gateway with novel rate-limiting algorithms
  • Creating a protocol adapter for legacy system modernization

DevOps & CI/CD Innovation

Custom deployment strategies, novel testing frameworks, and automated quality assurance systems.

  • Developing an AI-based test generation system
  • Building a custom blue-green deployment system with zero-downtime guarantees
  • Creating a novel static analysis tool for domain-specific patterns

Data Engineering & ETL

Novel data processing architectures, custom query engines, and real-time analytics systems.

  • Building a streaming ETL pipeline handling 1M+ events/second
  • Developing a custom query optimizer for a domain-specific data model
  • Creating a novel data deduplication algorithm for fuzzy matching

Security & Cryptography

Novel encryption schemes, custom authentication systems, and advanced threat detection.

  • Developing a zero-knowledge proof system for identity verification
  • Building a custom anomaly detection engine for security events
  • Creating a novel tokenization scheme for PII data

The CRA's 3-Question Eligibility Test

The CRA uses three questions to determine if your work qualifies. Here's what they mean in plain developer language.

1

Was there technological uncertainty?

Could your team determine the outcome in advance using standard knowledge? If you had to experiment with different approaches — try architecture A, benchmark it, then try architecture B — uncertainty existed.

Example: "We didn't know if a graph-based data model could meet our query performance requirements at scale."

2

Was there systematic investigation?

Did your team follow a methodical approach? This doesn't mean lab notes — it means hypothesizing, testing, measuring results, and iterating. Sprint-based development with defined experiments counts.

Example: "We benchmarked three caching strategies, profiled each under load, and documented the trade-offs before selecting our approach."

3

Was there technological advancement?

Did your team gain new knowledge or create something that goes beyond what was publicly available? This doesn't require a patent — it means you learned something new about what works (or doesn't) in your domain.

Example: "We discovered that combining technique X with technique Y achieved 3x better throughput than either alone — something not documented anywhere."

Rows of server cooling fans in a data centre

Common Misconceptions

Each of these keeps software teams from claiming work that would qualify.

"We're not doing R&D — we're just building product."

Reality: If your engineers are solving problems where the solution isn't known in advance, that's R&D. Building a product often involves significant technological uncertainty — especially in AI, data systems, and scalability challenges.

"Only lab research or PhD-level work qualifies."

Reality: SR&ED doesn't require academic research. It requires systematic investigation to resolve technological uncertainty. A senior developer experimenting with different architectures to solve a performance problem is doing SR&ED-eligible work.

"Our project failed, so it doesn't qualify."

Reality: Failed experiments are actually strong SR&ED candidates. The CRA explicitly states that the outcome of the work doesn't matter — what matters is that technological uncertainty existed and was systematically investigated.

"We use open-source tools, so it's not novel."

Reality: Using open-source libraries as building blocks is fine. If you're combining, extending, or pushing those tools beyond their documented capabilities to solve a new problem, that work qualifies.

"SR&ED is only for big companies with dedicated R&D teams."

Reality: There is no minimum team size, and small companies are most of the program: in 2025-26, 65% of the claims the CRA processed came from businesses with gross income under $4 million. A Canadian-controlled private corporation (CCPC) gets the enhanced 35% refundable credit on up to $6M of qualified expenditures a year, more than double the 15% basic rate.

How the Glauq Service Works for a Software Team

Your team already writes the SR&ED record. It's in the pull requests, the tickets and the benchmark that didn't work. Glauq captures that record while the work happens and turns it into a claim. Then a named, independent SR&ED expert reviews it and prepares it for filing. Nobody rebuilds the year from memory at filing time.

Illustrative example: one failed experiment, followed from pull request to T661

  1. The work

    #482 Bloom filter in front of dedupe lookup

    Closed: reverted

    p99 still over target under production-sized load. Next: try partitioned filters.

    The reverted PR is evidence, not waste.

  2. One question

    Glauq: #482 was reverted after a benchmark. Before you tried it, did the team know whether a Bloom filter would meet the latency target?
    Tech lead: No. Nothing published covers our key distribution. That's why we benchmarked it.

    Asked in Slack or Teams, about work done that week. A short answer usually does it.

  3. The record

    Project
    Real-time deduplication at scale
    Hypothesis 2
    A Bloom filter ahead of the lookup brings p99 under target
    Result
    p99 stayed above target; reverted
    Evidence
    PR #482 · benchmark run · DATA-311

    Dated and filed under the right uncertainty, the week it happened.

  4. The claim

    T661 line 244, draft

    “Hypothesis 2: a Bloom filter ahead of the lookup would bring p99 under target. We tested it [PR #482]. Under production-sized load p99 stayed above target, so we reverted it. That ruled out a single unpartitioned filter and led to experiment 3, partitioned filters.”

    A named SR&ED expert reviews every statement before anything is filed.

What your team does

  • Keeps working in GitHub, GitLab, Jira or Linear, exactly as now
  • The tech lead answers a few short questions a week in Slack or Teams
  • Answers the reviewer's technical questions when asked

Nothing to fill in or track by hand.

What Glauq does

  • Connects your tools and handles the setup
  • Keeps a dated record of what was tried, what failed and what was measured
  • Sorts the work into projects, uncertainties and experiments, and flags routine work so the expert can keep it out
  • Flags thin documentation in the quarter, while it can still be fixed
  • Drafts T661 lines 242, 244 and 246 with every statement linked to its evidence
  • Has a named, independent SR&ED expert review the claim, decide what is claimed, and prepare the T661 and provincial schedules
  • Files with your T2 and handles any CRA questions until the refund lands

Stop Leaving Money on the Table

Get a preliminary read on whether your engineering work is likely to qualify. If it does, Glauq documents it continuously and an independent SR&ED expert prepares and files the claim.

What a worked software SR&ED example looks like

The lists above tell you where the line usually falls. A worked example shows the line being drawn: the engineering situation, the technological uncertainty the team could not resolve from standard practice, the hypothesis they formed, the experiment they ran, what the result was, which records prove it happened, and — just as important — the surrounding routine work that would not qualify.

We are building a library of these, each reviewed by an independent SR&ED expert before publication. The first one is already written up as a full T661 narrative:

Worked example

T661 example for a software company: lines 242, 244 and 246 written out

One hypothetical software project taken from uncertainty to advancement, in the exact three answers the form asks for.

Frequently Asked Questions

Does software development qualify for SR&ED?

Yes — software development qualifies for SR&ED when it involves technological uncertainty that cannot be resolved through standard practice. This includes developing new algorithms, creating novel architectures, building AI/ML systems, and solving complex engineering challenges where the solution isn't known in advance.

What is 'technological uncertainty' in software?

Technological uncertainty exists when you can't determine in advance whether a particular approach will work, or how to achieve a desired result. For example: 'Can we process 1M events/second with sub-100ms latency?' or 'Can we train a model to accurately classify X with limited labeled data?' If your team had to experiment, prototype, or try multiple approaches, uncertainty likely existed.

Can SaaS startups claim SR&ED?

Yes. Software development drew 42.6% of the SR&ED tax credits the CRA allowed in 2025-26, more than any other field it reports. SaaS products often involve real uncertainty in multi-tenancy, scalability, real-time processing, security and AI features. For tax years starting after December 15, 2024, a CCPC gets a 35% refundable credit on up to $6M of qualified expenditures a year.

How much can a software company claim?

It depends on how much of your developers' time went into eligible work, not on headcount. For a CCPC the federal credit is 35% of qualified expenditures, refundable, up to $6M of expenditures a year ($2.1M of credit). Under the proxy method, overhead is added at 55% of the salary base. An illustrative case: $200,000 of eligible salaries plus a $110,000 proxy is $310,000 of qualified expenditures, or $108,500 of federal credit before provincial credits, which reduce the federal base. Use our SR&ED calculator for your own numbers.

Do we need to document our work differently?

Good development practices often overlap with SR&ED documentation requirements. Git commits, pull request descriptions, Jira tickets, architecture decision records, and sprint retrospectives can all serve as supporting evidence. Glauq's AI integrates with these tools to automatically identify and document eligible activities.

What if only part of a project qualifies?

That's completely normal. Most software projects contain a mix of eligible and ineligible work. For example, the novel algorithm powering your feature qualifies, but the standard CRUD interface around it doesn't. SR&ED claims can be made on the eligible portions — you don't need an entire project to qualify.