Startups move fast, and that usually means one thing: software subscriptions pile up quickly.
A team starts with a few basic tools, then adds project management software, design platforms, communication tools, analytics dashboards, developer tools, AI products, HR systems, and customer support platforms. At first, each purchase seems reasonable. Over time, though, the stack becomes messy. Teams forget who owns which subscription, how many seats are actually being used, and when renewals are coming.
That problem inspired me to design and build a SaaS Cost Optimizer, a web application aimed at helping startups track software subscriptions, detect waste, and identify opportunities to save money.
The problem
Most early-stage companies do not have a formal procurement process. Software buying is decentralized. One team signs up for a design tool, another pays for an AI assistant, another adds a reporting product, and soon the company is paying for overlapping tools without realizing it.
The most common issues are straightforward:
- unused or underused seats
- duplicate tools in the same category
- forgotten renewals
- scattered subscription data
- no clear visibility into monthly software spend
Even a small startup can lose a meaningful amount of money every month through tool sprawl.
The idea
The goal of the project was to create a simple internal platform where a company could:
- record all SaaS subscriptions in one place
- track seat allocation and real usage
- monitor billing cycles and renewal dates
- receive recommendations for cost savings
- generate a report for founders or operations teams
Instead of trying to build a full procurement platform from day one, I focused on an MVP that solves the visibility problem first.
The MVP approach
For the first version, I kept the scope intentionally tight.
The MVP includes:
- user authentication
- company-based workspaces
- a subscription tracker
- a dashboard showing SaaS spend
- recommendations for savings
- CSV import and export
- renewal reminders
This approach keeps the product practical while making it easier to test with real users.
Tech stack
I built the application using:
- Python with Flask for the backend
- PostgreSQL for persistent storage
- HTML, CSS, and JavaScript for the frontend
- Jinja templates for rendering pages
- Pandas for CSV import/export
- optional charting for dashboard visualizations
I chose Flask because it is lightweight and ideal for quickly shipping a structured MVP. It also keeps the architecture easy to understand and extend.
Core product features
1. Centralized subscription tracking
Users can add software subscriptions with details such as:
- tool name
- category
- billing cycle
- cost
- number of purchased seats
- number of used seats
- owner/team
- renewal date
This creates a single source of truth for SaaS spend.
2. Dashboard insights
The dashboard summarizes:
- total monthly spend
- spending by category
- most expensive tools
- upcoming renewals
- estimated cost-saving opportunities
The goal is to give decision-makers immediate visibility.
3. Cost-saving recommendations
The recommendation engine uses simple business rules to highlight waste. For example:
- purchased seats greater than used seats
- multiple subscriptions in the same category
- tools approaching renewal with low utilization
This makes the product actionable rather than just informative.
4. CSV onboarding
A startup can upload its existing subscription spreadsheet and populate the system quickly. This is important because manual entry is often a barrier to adoption.
5. Renewal reminders
The system flags subscriptions nearing renewal so teams can decide whether to keep, downgrade, or cancel them before another billing cycle begins.
Product thinking behind the build
One of the biggest lessons from this project was that internal tools still need strong product thinking.
It is not enough to store data. The software must answer a clear business question. In this case, the question is simple: *where are we wasting money on software?
That shaped every part of the MVP:
- the dashboard focuses on savings, not vanity metrics
- recommendations are easy to understand
- the data model supports real operational decisions
- the reporting is designed for founders and ops teams, not just technical users
What makes the idea valuable for startups
This type of product can be attractive to startups because it offers immediate ROI.
If a company spends thousands per month on software, identifying even a few unused seats or duplicate subscriptions can justify the product very quickly. It also supports better operational discipline as the team grows.
A founder, finance lead, or operations manager does not need a complex enterprise platform to start saving money. They need clarity and a fast way to act on it.
What I would build next
If I continue this project, the next features I would add are:
- email invoice parsing
- integrations with identity providers for usage data
- Slack or email notifications
- category benchmarking
- approval workflows for new subscriptions
- AI-generated spend optimization suggestions
Those features would move the product from manual tracking to intelligent spend management.
Final thoughts
Building this SaaS Cost Optimizer was a strong exercise in both engineering and product design. It combines backend development, data modeling, dashboard design, reporting, and practical business problem-solving in one project.
More importantly, it addresses a real problem that many startups face but often ignore until their spending becomes difficult to control.
Projects like this are valuable because they are not just technical demonstrations. They are business-focused applications with a clear customer, a clear problem, and a clear outcome.
That is exactly the kind of software I want to keep building.



No comments yet
Be the first reader to add one.