SAAS TAXABILITY IN MINNESOTA

Is SaaS taxable in Minnesota? A developer's guide to the exemption

No. Minnesota does not tax SaaS when it qualifies as online hosted software: accessed through the internet, hosted on a server the vendor or a third party owns, with no transfer of ownership or possession to the customer. The Department of Revenue's own test turns on those three features, not on price, seat count, or contract length. There is no pending legislation that changes this.

That line isn't drawn directly in statute. Minnesota's software statute (Minn. Stat. § 297A.61) taxes the sale, lease, or license of prewritten computer software without specifying a delivery method, and the state's digital-product provisions reach anything transferred electronically unless it falls outside a defined list. The exemption for hosted access comes from the Department of Revenue's own administrative guide, which defines "online hosted software" by ownership and location rather than by download, and states plainly that subscriptions to it aren't taxable. A SaaS product that ships a required local agent, CLI tool, or downloadable client risks losing that exemption on the local piece.

Founder, Ziptax

Last updated

Oct 28, 2026

Rates verified against the Ziptax tax engine. Taxability positions sourced to official state guidance, listed under Sources. See our editorial methodology.

If you're building a product that needs to calculate SaaS sales tax for your customers, this guide is for you. It covers Minnesota's SaaS tax rules and rates, what to account for when you build sales tax calculation into your product, and how Ziptax returns accurate Minnesota rates through an API without you building and maintaining a rate engine.

Minnesota SaaS sales tax at a glance

Product Taxability Rules

Does Minnesota tax SaaS?No. Exempt as "online hosted software" when accessed through the internet with no transfer of ownership or possession, and hosted on a server the vendor or a third party owns. A required local agent, CLI tool, or downloadable client can change this.
Is a law change pending?No. Checked against Minnesota's 2026 legislative session and the Department of Revenue directly; nothing currently changes this.
Base State Tax Rate6.875%
Local Combined Rate Range6.875% where no local tax applies, up to 9.875% in St. Paul once city, county, and the seven-county Metro Area tax are stacked on. Not resolvable from ZIP code alone.
Primary Data SourcesMinnesota Department of Revenue

State Registration & Collection Triggers

What triggers a tax collection requirement?Meeting either of these conditions (whichever happens first): Economic nexus: more than $100,000 in retail sales, or 200 or more retail sales, made or facilitated into Minnesota in the prior 12-month period. Physical nexus: an office, inventory or other property, or an employee working in Minnesota.
What revenue counts toward the $100,000 / 200-sale threshold?Retail sales made or facilitated into Minnesota, per Minn. Stat. § 297A.66, subd. 1(c). Unlike California's and Alabama's thresholds, the statute's text isn't limited to tangible personal property.
Does exempt SaaS revenue count toward the threshold?Yes. Minnesota's statute counts all "retail sales" toward the threshold, which includes both taxable and exempt sales. A pure-SaaS seller can cross $100,000 or 200 Minnesota transactions on subscription revenue alone and trigger registration requirements, unlike in California or Alabama.
Lookback Calculation WindowPrior 12-month period (a rolling window, not a fixed calendar year).
Are marketplace sales included?Yes. Sales facilitated through a marketplace count toward an individual seller's own threshold count for economic nexus. While the marketplace provider collects the tax, the seller must still include those transactions to determine if they cross the threshold.
SST State (Streamlined Sales Tax)?Yes. Minnesota has been a Full Member of Streamlined Sales Tax since October 1, 2005, so SST's taxability matrices and simplified registration are available alongside filing directly with the state.
Primary Data SourcesMinnesota Department of Revenue, Streamlined Sales Tax Governing Board

Which types of software does Minnesota tax?

Minnesota taxes software based on whether the customer ever takes ownership or possession of it, not based on a dedicated SaaS statute. Software the customer downloads, installs, or receives on physical media is taxable prewritten computer software.

Software the customer only accesses through the internet, with nothing transferred or retained locally and the software itself owned and hosted by the vendor or a third party, falls outside that definition under the Department of Revenue's online hosted software guidance.

What you sellTaxable in Minnesota
SaaS, accessed remotely through the internet, no download (online hosted software)No
SaaS that requires a local agent, CLI tool, or downloadable clientLikely yes on that component. Treat it as a separate, taxable line until you confirm otherwise.
Prewritten (canned) software, downloadedYes
Prewritten software on physical media (disc, CD-ROM, tape)Yes
Custom software written to a customer's specifications, with the development work separately statedNo
Specified digital products (e-books, digital audio or video, online games, e-cards, and the digital codes for them)Yes
Other electronically transferred digital content not on that list (reports or PDFs, digital photos, logos or design files, access to news articles)No
SaaS bundled with tangible goodsSplit the bundle. Tangible line items are taxable and the software portion follows its own rule. If the invoice does not separate them, the whole charge is exposed.
Bundles are where implementations break, the same as anywhere else. Apply taxability per line item, not per order: a SaaS subscription that ships a required local agent, a hardware component, or a physical onboarding kit stays exempt on the pure-access portion, but the tangible or locally-installed portion is taxable, and an undifferentiated lump sum drags the whole invoice into taxable territory.

How do you charge the correct sales tax rate for SaaS in Minnesota?

Under current rules, you mostly don't. Because online hosted SaaS with no download is exempt, the sales tax on a remotely accessed subscription sold to a Minnesota customer is $0. That changes the moment the product stops being pure hosted access: a downloaded client, a required local agent, physical media, or a bundled tangible good all bring tax back into the picture, and Minnesota has no pending transition to plan around, so this is the steady state, not a temporary one.

When some portion of a sale is taxable, engineering teams have two options for calculating the correct rate on that portion: call a real-time sales tax API, or manually build and maintain an internal rate engine.

Option 1: Use the Ziptax Sales Tax API

You send the buyer's address at the point of checkout, and the API evaluates the exact boundary lines, including whether the address sits inside the seven-county Metro Area and which city or county local rate applies there.

To calculate a live rate against a Minnesota address, use the v60 endpoint:

curl -G https://api.zip-tax.com/request/v60 \
    -H "X-API-KEY: <apiKey>" \
    -d key=your-api-key \
    --data-urlencode "address=75 Rev Dr Martin Luther King Jr Blvd, St. Paul, MN, 55155"

Explore the REST API documentation to verify complete payload structures.

With that response, you’ll want to:

  1. Multiply by the combined rate rather than assembling it from the components.
  2. Store the jurisdiction on the transaction, because rebuilding it later from an address is lossy.
  3. Store the effective date too, since Minnesota republishes local rates every quarter and a stored rate is only right until the next change.

If your product catalog handles complex items like SaaS, custom development, or bundles, you can also pass a product taxability code to dynamically check product rules.Search for the correct product code and review Taxability Information Codes (TICs) to see how the response returns product-specific tax flags and exemptions.

What an API will not tell you: whether your company has crossed a nexus threshold in Minnesota, and whether a specific local component of a hybrid product is enough to make the whole charge taxable. Both stay on your side of the integration.

To automate threshold tracking, tax filings, and remittance, you can set up merchant management to connect TaxCloud automated compliance for your own business or for sub-merchants building on your platform.

Option 2: Build and maintain it yourself

Worth considering if you already hold jurisdiction data for other reasons. If you take this route, Minnesota needs four things handled:

  1. A product taxability decision separate from the rate lookup. Hosted SaaS is exempt under the Department of Revenue's three-factor online hosted software test; downloaded, licensed, or physically-delivered software is taxable regardless of that test.
  2. Threshold accumulation on the right basis. Minnesota's $100,000 / 200-retail-sale threshold is written as "retail sales," not "retail sales of tangible personal property" the way California's and Alabama's thresholds are. That means exempt SaaS subscription revenue absolutely counts toward Minnesota's own threshold, even though it never generates tax once you're registered.
  3. Address-level rate resolution for whatever portion of a transaction is taxable. Minnesota stacks local layers: a city rate, a county rate, and, inside the seven-county Twin Cities area, a combined 1.00% Metro Area Housing and Transportation tax layered on top of whatever city and county rates also apply there.
  4. An effective date on every rule. Minnesota republishes its local rate guide quarterly, not annually, so a stored rate needs a matching refresh cadence.

Five Minnesota specifics to watch out for:

  1. ZIP-based shortcuts. A city can sit in two different county tax areas depending on which side of a boundary line an address falls on. Chanhassen is 8.875% under Carver County and 9.025% under Hennepin County; Blaine is 8.125% under Anoka County and 8.375% under Ramsey County. A city-name lookup alone can miss the difference, so resolve the full street address.
  2. Treating the Metro Area tax as optional. It is not a one-off local add-on. It is a flat 1.00% (0.25% for housing, 0.75% for transportation) that applies to every taxable sale across all seven Twin Cities counties, on top of whatever city and county rates also apply there.
  3. Treating "hosted" as self-defining. The Department of Revenue's own test has three parts: no ownership or possession by the user, access through the internet, and hosting at a location owned by the vendor or a third party. A SaaS product that ships a required local agent, CLI tool, or downloadable client risks failing that test on the local piece.
  4. Assuming exempt SaaS revenue doesn't count toward registration. Unlike California and Alabama, Minnesota's threshold text doesn't carve out non-tangible sales, so a pure-SaaS seller will realistically cross $100,000 or 200 Minnesota transactions on subscription revenue alone and will need to register, even while owing $0 in tax on every one of those sales.
  5. Local rate changes landing mid-quarter. Minnesota publishes a new local rate guide every quarter, and individual city and county taxes can start or end on dates other than January 1. A stored rate is right until the next change, and nothing tells you when that happened unless you're tracking effective dates.

When does a SaaS business have to collect sales tax in Minnesota?

Registration and collection are two separate obligations with completely different triggers. Conflating them is where most engineering implementations go wrong, and it is especially easy to get wrong in an exempt state, where it's tempting to assume no tax means no obligations at all.

To get this right, view collection requirements and nexus, and have your application and billing stack track these two operational rules:

Rule 1: Monitor your registration triggers (nexus)

You must legally register to file with the state the moment either of these conditions is met:

  • Physical presence: an employee working in Minnesota, an office, inventory held in the state, or leased server capacity.
  • Economic threshold:When your retail sales made or facilitated into Minnesota cross $100,000, or 200 individual retail sales, in the prior 12-month rolling period, you’ve triggered nexus and it’s time to register. Minnesota counts all retail sales (taxable and exempt), so exempt SaaS subscription revenue counts toward this figure.

Rule 2: Apply the correct collection logic

This plays out differently than it does in California or Alabama, where pure SaaS revenue is excluded from the threshold by definition. In Minnesota, a seller whose only revenue is pure hosted SaaS can still cross $100,000 or 200 Minnesota transactions on that revenue alone, which triggers the registration requirement.

Once registered, your billing system should calculate tax at $0 on every hosted-SaaS line and submit zero-dollar returns on schedule, the same outcome as an exempt state with a narrower threshold, just reached by a different path.

Registration becomes a live tax-collecting event the moment any revenue is actually taxable: a downloaded client, a required local agent, physical media, a bundled tangible good, or a specified digital product sold alongside the subscription.

Where Ziptax helps

If you're building a custom billing engine, a niche ERP, or a B2B SaaS platform, you don't need an enterprise compliance suite just to calculate an accurate checkout rate. You just need a fast, reliable endpoint.

Ziptax handles the infrastructure layer of sales tax calculation so your team can focus on your core product.

  • Rooftop Precision: Resolves rates across 12,000+ U.S. tax jurisdictions using exact address and coordinate-based lookups, eliminating the accuracy liabilities of ZIP-based shortcuts, including Minnesota's city, county, and Metro Area tax layers.
  • Engineered for Platforms: Built specifically to embed live tax calculations directly into checkout workflows, API endpoints, and marketplace billing frameworks.
  • Frictionless Pricing: Designed for cost-conscious development teams who want to pay strictly for active calculation calls without committing to heavy enterprise software contracts.
  • The TaxCloud Runway: When your transaction volume scales or your users demand automated filing and remittance services, you can pair Ziptax with TaxCloud for the rest of compliance. You get a lightweight API to deploy today and a filing and remittance backend ready when you need it.

Get Minnesota SaaS tax rates from an API

Address-level rates for every Minnesota jurisdiction, plus the rest of the US, Canada, and select other markets.

Frequently asked questions

Do you have to register in Minnesota if your SaaS product is exempt there? Possibly, and for a different reason than in most exempt states. Minnesota's $100,000 / 200-sale economic nexus threshold is measured on retail sales generally, not on tangible personal property the way California's and Alabama's thresholds are. That means a seller whose only Minnesota revenue is pure hosted SaaS can still cross the threshold on subscription revenue alone. If you do, you must register and file, but your billing system should calculate tax at $0 on every exempt SaaS line and submit zero-dollar returns on schedule. Registration and taxability are independent tests: registration turns on whether you have nexus, through the threshold above or through physical presence; taxability turns on what you sell.

Does Minnesota tax software differently depending on how it's delivered or hosted? Yes, and ownership or possession, not just the download itself, is the operative test. Software a customer downloads, installs locally, or receives on physical media is taxable prewritten computer software. Software accessed only through the internet, with nothing transferred or retained locally and the software itself owned and hosted by the vendor or a third party, is exempt as online hosted software under current Department of Revenue guidance. A SaaS product that bundles in a local agent or CLI tool risks losing that exemption on the local component.

Can you use a ZIP code to get the Minnesota sales tax rate? Not reliably. Minnesota layers city rates, county rates, and, inside the seven-county Twin Cities area, a combined 1.00% Metro Area tax, and a single city can fall into two different county tax areas depending on the exact address. Two customers who share a ZIP code can end up with different combined rates. Resolve the rate from the full street address instead of a ZIP-level lookup.

Does SaaS revenue count toward Minnesota's economic nexus threshold? Yes, which is a real point of difference from states like California and Alabama. Minnesota's statute sets the $100,000 / 200-sale threshold on "retail sales" generally, with no tangible-personal-property qualifier. Both taxable and exempt retail sales must be included. You should build your threshold monitor to count SaaS revenue unconditionally.

What is Minnesota's Metro Area sales tax, and does it apply to SaaS? It's a combined 1.00% local tax (0.25% for housing, 0.75% for transportation) that applies to every taxable retail sale made in the seven-county Twin Cities area: Anoka, Carver, Dakota, Hennepin, Ramsey, Scott, and Washington counties. It follows the same rules as any other local sales tax, which means it applies only to sales that are taxable in the first place. Since a pure hosted-SaaS subscription is exempt statewide, the Metro Area tax doesn't apply to it either. It becomes relevant the moment something in the same account is taxable—a downloaded client, a required local agent, or a bundled tangible good—and the customer's address sits in one of those seven counties.

.

Sources

  1. SaaS / online hosted software exemption:
  2. Minnesota Department of Revenue, "Computer Software and Digital Products" industry guide
  3. Prewritten and custom computer software, delivery methods, maintenance and training:
  4. Minnesota Department of Revenue Sales Tax Fact Sheet 134, Computer Software (revised September 2018)
  5. Minnesota Statutes § 297A.61, subdivisions 17, 17a, and 17b
  6. Minnesota Rules 8130.9910
  7. Digital products (specified and other digital products):
  8. Minnesota Department of Revenue, "Computer Software and Digital Products" industry guide
  9. Minnesota Statutes § 297A.61, subdivisions 3(l) and 4(o)
  10. Economic nexus and the $100,000 / 200-sale threshold:
  11. Minnesota Statutes § 297A.66, subdivision 1, paragraph (c)
  12. Minnesota Department of Revenue, Sales Tax FAQs for Remote Sellers
  13. State and local sales tax rates, including the Metro Area tax:
  14. Minnesota Department of Revenue, Local Sales and Use Tax Rate Guide, effective October 1, 2026 through December 31, 2026
  15. Streamlined Sales Tax (SST) status:
  16. Streamlined Sales Tax Governing Board, Minnesota state detail

SaaS Taxability by State (2026 Update)

Click on a state to see whether it taxes SaaS, its current rates, and when you need to register.

Build with Ziptax

Calculating sales tax doesn’t need to be expensive or complex. Start with 100 free API calls today and see how simple and accurate tax rate lookups can be.