What I Learned Building My First Desktop Tool From Scratch
I shipped my first desktop software product a few months ago. It's an SEO audit tool that crawls websites, checks 80+ issues, and generates white-label reports.
The tool works great. Getting it into people's hands was the hard part. Here's what happened and what I'd do differently.
The Idea Came From Doing the Work
Before I built software, I spent over eight years in quality assurance and operations management. I've sat through more process audits than I can count. When I started freelancing and needed to audit websites for SEO, I looked at the tools available and the pricing made no sense for someone running a small operation.
Ahrefs, Semrush, Screaming Frog's paid tier were all subscription-based. Some are $99 a month or more. For a freelance web designer auditing a handful of client sites, that math didn’t math. You're spending more on the tool than you're making on the audit.
I knew what an SEO audit should cover from my QA background. The problem was I didn't know how to code it. So I spent a year teaching myself Python. I spent time writing bad code, rewriting it, breaking things, fixing them, learning everything I could from the ground up.
Building It Was the Fun Part
I built the tool in Python with PySide6 for the desktop interface. The crawling engine, the SEO checks, the report generator was the part I actually enjoyed. Debugging concurrency issues at midnight, figuring out how to make web crawls fast without hammering servers, getting PDF exports to look professional with custom branding.
The feature list grew organically from real problems. I'd audit a site, notice something the tool didn't catch, and add it. AI Overview optimization checks because Google was changing search. Trust and authority scoring because clients kept asking "but is my site trustworthy?" White-label reports because freelancers need to put their own logo on things, not mine.
If I'd tried to plan every feature upfront, I'd still be planning. Building while using the tool yourself is the fastest way to figure out what matters.
Then I Tried to Sell It
This is where it got humbling.
My first move was the Microsoft Store. Seemed logical because of the built-in distribution, no code signing headaches, millions of Windows users right there. I submitted the app, waited for approval, and got rejected. Their issue? My pricing. They thought my first price was too high. For a professional SEO tool that replaces a $99/month subscription, I didn’t understand it.
So I pivoted to other marketplaces. Gumroad, Etsy, Appsumo. I tried to list everywhere I could, figuring one of them would stick. But I was spreading myself thin across platforms I didn't control, each with their own rules, fees, and limitations.
Meanwhile, anyone who downloaded the tool directly got hit with Windows SmartScreen, that scary red warning that says "Windows protected your PC." Doesn't matter that the software is clean. If you don't have a code signing certificate, Windows treats your app like it's suspicious. An EV certificate to fix it costs $300 to $600 a year. For a solo developer with no proof yet… it’s a risky investment.
I spent weeks researching code signing, self-signing, workarounds. There aren't any real shortcuts. You either pay for the certificate or you write instructions telling your customers to click through a warning that makes your product look dangerous. Neither option feels great early on.
The Marketplace Trap
These are valid concerns and ones that made me stuck. Every sale on a third-party site is their customer, not yours. You don't fully own the relationship. You can't email them whenever you want. You can't control how your product shows up. And if the platform changes their terms or fees tomorrow, you eat it.
I tried a few of them and they each gave me different concerns. AppSumo wants a whole production like videos, marketing assets, support commitments and takes a massive cut on your first deal. Etsy worked for smaller products but felt wrong for professional software.
Eventually I pulled everything off most third-party marketplaces took a second and reassessed what I was doing.
But here's the reality….. as a startup, sometimes you have to bite the bullet. Nobody knows who you are yet. You don't have the traffic. You don't have the trust. I had to stop being stubborn about doing everything on my own driving traffic to my site, it’s a crazy uphill battle. So I put MadCrawl on the Microsoft Store too because when someone's never heard of you, seeing your product in a store they already trust makes them way more likely to take a chance. My website is still home base but when you’re a startup, you need to build recognition and trust.
What I'd Tell Someone Starting Out
Build something you actually use. I didn't guess what features to add, I used the tool on real sites and added what was missing. Your own frustration is the best product roadmap.
Do not over bloat your program no one wants. I spent months polishing features that nobody asked for while the tool sat unreleased. Every week you don't ship is a week you're not learning from real users.
Budget for the boring stuff. Code signing certificates, packaging, distribution, payment processing; none of this is exciting and all of it takes longer than you think. The code is maybe 50% of the work. The other 50% is everything around it.
Price based on what it replaces, not what it cost to build. My tool replaces subscriptions that cost $99 a month or more. At $59 one-time, it pays for itself. That's the comparison that matters, not how many hours I spent coding it.
Where Things Stand Now
MadFable is live. The SEO Auditor is the flagship product at $59. I've got a Bulk Certificate Generator at $9 and a Background Remover in the works with more to come.
The first tool was the hardest because of everything I didn't know about the business side. Now I know. The next one will be faster.