Windows desktop developers

Your free Windows tool has users. It can have revenue.

A C ABI DLL that pays you when your users opt in to sharing a capped slice of unused bandwidth for public web data collection. No nag screen, no trial timer, no ad panel wedged into a utility nobody wants to pay for.

No nag screen, no crippled tier
Desktop utilities are notoriously hard to charge for — the people who need yours often need it once. This adds a revenue stream that does not require you to degrade the free version or interrupt anyone.
One DLL and a header
`cr_sdk.dll` and `cr_sdk.h`. It is a plain C ABI, so it binds from C and C++ directly and from C# through P/Invoke, Go through cgo, Python through ctypes, or Node through an FFI package. No runtime to install alongside it.
The limits are not yours to raise
A bandwidth ceiling, daily and monthly data caps, a CPU and memory budget, and a port and network denylist, all enforced inside the compiled Rust core with no API to loosen them. The relay enforces the same limits from its side.
Consent is the only code path
The SDK cannot share anything until the user has accepted an agreement they were actually shown. On a desktop app that matters more, not less: your users are the ones most likely to have a firewall log open.
  • 8+ characters
  • An uppercase letter
  • A lowercase letter
  • A number

We verify every publisher before payout. A trustworthy network is worth more to us than a big one.

Free to integrate. up to $0.50 per user per month — earned daily, paid monthly.

Proof

  • Up to $0.50 per user per month
  • One DLL, plain C ABI
  • C++, C#, Go, Python, Node
  • Caps compiled into the core
  • First 100 devices, no sales call

Why desktop monetization is a different problem

Mobile has a payments rail built into the operating system. Windows does not, in any way that a small developer can rely on. The result is a set of bad options that every desktop developer recognises:

  • A paid tier that requires you to make the free version worse on purpose.
  • A nag screen, which trains people to close your app faster.
  • Ads in a desktop utility, which look like malware and get reported as malware.
  • Donations, which convert at a rate that will not fund a weekend.

None of those is wrong exactly. They are just all expensive in goodwill, and goodwill is most of what a free tool has.

What it pays

Up to $0.50 per user per month, at per-country rates, with your full rate card in your dashboard from the moment you sign up.

Earnings accrue daily: a user counts for a day once their device has been sharing for 60 minutes in that day, each qualifying day is worth the monthly rate divided by the days in that month, and the month is the sum of its days. A day below the bar earns nothing.

Devices on hosting, datacenter or VPN IPs are not counted. On desktop that exclusion matters more than it does on mobile, because a meaningful share of Windows power users run one.

How a qualifying day is counted has the full arithmetic. If you are still comparing models, what apps make per download puts this next to ads and subscriptions.

The antivirus question, which you should ask

Bandwidth-sharing agents are classified as proxyware by several antivirus vendors, and an unsigned binary that opens network connections is exactly the shape a heuristic scanner dislikes. Any vendor who tells you this is a non-issue is telling you they have not shipped on Windows.

What actually reduces it: code-signing your own executable with a certificate that has reputation, shipping the DLL alongside your signed binary rather than downloading it at runtime, and submitting a false-positive report to any vendor that flags you. We publish checksums for every artifact so you can verify what you are shipping.

This is a real cost of the model on Windows and it belongs in your decision.

Before you integrate anything

  1. Read the consent screen your users will see.
  2. Ask which limits you can change. The correct number is zero.
  3. Ask what happens under sustained load. "Opts out" beats "throttles".
  4. Ask who buys the traffic and what is blocked.
  5. Ship it to a small slice of your install base and watch your crash reports and your uninstall rate for a week.

Your first 100 devices go live without a sales call, so step 5 costs an afternoon.

How it works has the technical detail, and the platforms page lists every binding.

Questions

How do I make money from a free Windows application?

The realistic options are a paid tier, donations, bundled offers, or bandwidth sharing. A paid tier means deliberately limiting the free version, and donations convert at a fraction of a percent for most tools. Bandwidth sharing pays up to $0.50 per user per month for users who opt in to relaying a capped share of unused connection capacity, without changing the application they are using. For a widely-installed free utility it is usually the only option that does not make the product worse.

What languages can call the Windows SDK?

It ships as `cr_sdk.dll` with a `cr_sdk.h` header and a plain C ABI, so C and C++ call it directly and anything with C FFI binds to it — C# through P/Invoke, Go through cgo, Python through ctypes, Node through an FFI package. There is no separate runtime or framework dependency to install next to it.

Will antivirus software flag my app for including this?

It can. Bandwidth-sharing agents are classified as proxyware by several vendors, and heuristic scanners react to unsigned binaries that open network connections. The practical mitigations are code-signing your executable with a certificate that has established reputation, shipping the library alongside your signed binary rather than fetching it at runtime, and filing false-positive reports with any vendor that flags you. It is a genuine cost of this model on Windows and worth weighing before you integrate.

Does the user have to agree to anything?

Yes, and it is not optional or configurable. The SDK is incapable of transmitting anything until the user has accepted an agreement that was displayed to them. It is not a settings toggle defaulted to on and not a clause inside a licence agreement. Your build should be reviewed for a working opt-out control before your device cap is lifted.

How much bandwidth does it actually use?

There is a bandwidth ceiling plus separate daily and monthly data caps, along with a CPU and memory budget and a denylist of ports and networks. All of them are compiled into the Rust core and there is no API to raise them. When a cap is reached or the machine is under sustained load, the device opts out of sharing entirely rather than continuing at a reduced rate.

Your first 100 devices go live today.

No sales call, no approval to start earning.

Create your free account