Open source and taxes seems to be a weird beast in at least Sweden and perhaps elsewhere as well. Let's dig into how it seems to work.
The basics
If I receive a donation for an open source project of mine, then the Swedish tax authority says that I should tax that as income as there's a reasonable expectation of a service in return.
If I as a company decides to donate to an open source project, then that donation is not tax deductible as it is a voluntary donation and hence not required for my company to acquire its income.
The result: Both my company and the receiver has to pay taxes on the same money, making a taxes on taxes kind of situation – expensive.
Lets do the math: Best case scenario
If...
- The giver is a limited company ("aktiebolag", the company itself pays taxes on its profits)
- The receiver is not paying the Swedish high income tax
- The receiver lives in the municipality with the lowest local taxes
- The receiver declares the income as from a hobby ("hobbyinkomst")
...then, what is left of $100...
- After the company has paid taxes: $100 * (100% - 20.6%) = $79.6
- After the receiver has paid "egenavgifter": $79.6 * (100% - 29%) = $79.6 * 71% ≈ $56.52
- After the receiver has paid income tax: $56.52 * (100% - 29.18%) = $56.52 * 70.82% ≈ $40.03
...is just around $40
40% of the money that the company giver originally used for the donation actually got received by the recipient.
Lets do the math: Worse case
If...
- The giver is a personal company ("enskild firma", the owner pays taxes on its profits)
- The owner of the giving company as well as the receiver, both earns enough money to pay high income taxes (an additional 20%)
- Both lives in a municipality with average local taxes
- The receiver still declares the income as from a hobby ("hobbyinkomst")
...then, what is left of $100...
- After the company has paid "egenavgifter": $100 * (100% - 29%) = $71
- After the company has paid taxes: $71 * (100% - 32.27% - 20%) = $71 * 47.73% ≈ $33.89
- For the receiver, after paying "egenavgifter": $33.89 * (100% - 29%) = $33.89 * 71% ≈ $24.06
- For the receiver, after paying tax: $24.06 * (100% - 32.27% - 20%) = $24.06 * 47.73% ≈ $11.48
...is just around $11.50
11.5% of the money that the company giver originally used for the donation actually got received by the recipient.
Lets do the math: The absolute worst case – circular/Reciprocal donations
Many of the donations in the open source space moves around within that space, being used to fund the receiver's donations to others. Many maintainers who receive also give donations, even reciprocally at times, and due to the above this can really cause issues with double taxation or more.
When money given can't be deducted from the ones received, then every step more and more money gets lost.
That's why companies can deduct their costs from their income, as the intention of the tax system is to only tax the profits a company make, not the full revenue they have.
If 60% gets lost per step, as in the best current scenario above, then out of $100 000 donated this much will be received after each step:
- $40 000
- $16 000
- $6400
- $2560
- $1024
After five steps 99% of the money has evaporated away, making reciprocal donations or any kind of trickle-down effects on eg. sub-dependencies essentially impossible.
Only if donations given can be deducted from donations received can any kind of reciprocal donations or trickle-down effects be achieved.
Up until then, the only feasible strategy at all is to either be a receiver or to be a giver, never both. Though that doesn't rhyme with the open source spirit.
Lets do the math: How it should be, deductible donations
Then, what is left of $100...
- For the company: Deductible, no taxes paid, all $100 is forwarded to the receiver
- For the receiver, after paying "egenavgifter": $100 * (100% - 29%) = $71
- Depending on whether high income tax is paid or not:
- After only paying local municipal taxes: $71 * (100% - 32.27%) = $71 * 67.73% ≈ $48.09
- After paying both local municipal taxes and state high income taxes: $71 * (100% - 32.27% - 20%) = $71 * 47.73% ≈ $33.89
...is roughly $48 rather than $40 and $34 rather than $11.50
In other words: A receiver paying high income taxes would get almost three times the money compared to the current worse scenario. A receiver who doesn't pay high income taxes would get at least 20% more than the current best case scenario.
But how to approach donations here and now?
Currently the better approach for the "giver company" is to buy something from the receiver which could be required for the "giver company" to acquire its income and therefore become a deductible expense.
Some examples of that are: Sign a support agreement, buy consulting hours, sign an SLA-style guarantee from something like Tidelift or perhaps ensure you get enough promotion back to essentially make it classify as an ad for you.
Tidelift is also a current fix for the challenge to the trickle-down effect, as they disperse money received to the entire dependency trees, not just to the topmost rockstar projects a project depends upon, but their dependencies and the dependencies of those and so on.
Though: I'm not a tax expert, so I can't give any here advice. These are purely some thoughts and ramblings of mine on a topic that I think many ignore, based on the response I got when I asked the Swedish tax authority a question on this.
I find it okay that received open source donations is classified and taxes as income, but then the reverse also have to be true – it then has to be a tax deductible expense for the giving company as well.
Currently it seems like the Swedish tax authority wants to both have the cake and eat it, taxing both, which isn't fair and isn't along the intent of the tax system.
I myself am available at Tidelift for companies who wants to support me and I'm available at GitHub Sponsors for people who want to sponsor me (as well as companies if it makes sense for them to give there, maybe it is tax deductible in some countries?).
How does it work in your countries? Any thoughts on my rumblings? Please leave a comment!
Originally published in an earlier version at LinkedIn.
Top comments (0)