Pieter Levels Says Vibe Coding Saves Him ~$25K/Month by Replacing SaaS


The idea comes from a recent X post by Pieter Levels, the indie developer behind the @levelsio account.
Levels says he has progressively replaced many of the SaaS products and operational services used across his websites with tools he built himself through vibe coding.
His estimate: about $25,000 per month in savings.
That figure should be understood as Levels' own reported estimate, not an independently audited cost study. The more important part of the post is the architecture behind the savings.
The replacements are surprisingly practical.
Instead of rebuilding Stripe, Cloudflare, or an entire hyperscale infrastructure platform, he targets narrow services where the underlying technical primitive already exists.
The pattern looks like this:
Expensive SaaS API
→ identify the 10-20% of features actually used
→ combine mature open-source components
→ use AI coding to build the integration layer
→ deploy on existing infrastructure
→ remove recurring SaaS markupThat is the part of vibe coding that matters economically.
Levels listed a broad set of services that he now handles with internally built alternatives.
| Paid service or workflow | Vibe-coded replacement | Reported savings |
|---|---|---|
| Weather API | Custom weather service using Norway's meteorological API | Not specified |
| Image resizing API | Node.js + Sharp + Redis | ~$1,500/mo |
| Google Vision NSFW detection | Python + NudeNet | ~$2,500/mo |
| Cloudflare Streaming | Nginx video streaming on VPS infrastructure | ~$250/mo |
| API Flash | Custom screenshot service | ~$250/mo |
| New Relic + IPHub | Internal monitoring, blocking, and fleet tooling called error2telegram | ~$250/mo |
| Human moderators | Automated moderation using xAI | ~$10,000/mo |
| IFTTT | Telegram bot automation | ~$100/mo |
| Photopea inside Photo AI | Custom browser-based photo editor | ~$100/mo |
| Mapbox | Custom implementation using OpenFreeMaps | ~$500/mo |
| UptimeRobot | ~$5/mo Uptime Canary app running on Kuma | ~$50/mo |
| Ghost | Custom blog platform | Not specified |
| Human customer support | Featurebase + AI support bot | ~$5,000/mo |
| ScrapingBee / SerpAPI | ~$1/mo scraper using Patchright | ~$250/mo |
The individually stated savings add up to roughly $20,800 per month before counting the weather API, blog platform, and any other costs included in Levels' overall estimate.
That is why the headline figure should be described as approximately $25,000 per month according to Levels, rather than presented as an accounting total that can be reproduced directly from the itemized list.
The services in Levels' list share an important characteristic: most are not fundamentally new technologies.
They are packaged infrastructure.
A commercial image resizing API, for example, may provide a polished API, authentication, billing, dashboards, scaling, retries, observability, global delivery, and support.
But the core operation may still be:
Input image
→ resize
→ crop
→ compress
→ convert format
→ cache
→ return assetThe same is true for many screenshot, monitoring, automation, and scraping products.
Before AI coding, the question was whether saving a few hundred or a few thousand dollars per month justified several days or weeks of engineering work.
Vibe coding reduces the cost of that engineering layer.
The economic threshold moves.
Levels says replacing an image resizing API with a Node.js service based on Sharp and Redis saves around $1,500 per month.
This is one of the clearest examples of where internal tooling can make sense.
Sharp already handles most common image operations:
The custom application mainly needs to provide the surrounding infrastructure:
Request
→ validate image
→ calculate transformation key
→ check cache
→ process with Sharp
→ store result
→ return cached URLRedis can be used for caching metadata, locks, rate limits, queues, or deduplication.
The hidden engineering work is not image resizing itself. It is protecting the service against malformed files, huge images, memory exhaustion, repeated transformations, and abusive requests.
For a company already operating image-heavy products, however, this can be an unusually strong build-vs-buy candidate.
Levels reports replacing Google Vision-based NSFW detection with a Python service using NudeNet, with claimed savings of around $2,500 per month.
The economic logic is similar.
Commercial computer-vision APIs charge for convenience and managed scale. If a product only needs a narrow classifier, an open-source model can reduce per-request costs substantially.
A typical internal moderation pipeline might be:
Upload
→ basic file validation
→ local classifier
→ confidence score
→ allow / block / reviewBut this replacement has an important limitation.
A commercial moderation service may provide broader category coverage, continuous model improvements, global infrastructure, service-level guarantees, and abuse protections.
A self-hosted model must be evaluated against the application's real data.
False negatives and false positives can cost far more than the API bill if moderation decisions affect user safety or platform compliance.
Levels says he replaced Cloudflare video streaming with his own Nginx-based VPS setup and estimates about $250 per month in savings.
This can work well when the workload is controlled.
For straightforward video delivery, the architecture can be simple:
Video file
→ VPS
→ Nginx
→ browserBut a managed video platform can also provide:
The internal version is attractive when the product does not need most of those features.
The mistake would be comparing an Nginx server with the full feature set of a managed video platform and assuming they are identical.
They are not.
The goal is to replace the subset actually being used.
Levels says he replaced API Flash with his own screenshot service, saving roughly $250 per month.
A browser screenshot API is another classic vibe-coding candidate.
Modern browser automation can handle:
A simple architecture can be:
POST /screenshot
→ queue
→ browser worker
→ load URL
→ wait for page state
→ capture image
→ save resultThe difficult parts are concurrency, browser crashes, SSRF protection, hostile pages, memory leaks, timeouts, and bot detection.
If screenshots are mostly generated from pages controlled by the same company, the operational problem becomes much easier.
Levels says he replaced parts of New Relic and IPHub with an internal system called error2telegram, saving around $250 per month.
This illustrates another useful principle:
many small teams do not need the full feature set of enterprise observability software.
An internal monitoring layer may only need to answer a few questions:
Those events can be pushed directly to Telegram.
For a solo founder or very small engineering team, that may be more actionable than a sophisticated observability dashboard.
The tradeoff is obvious: deep tracing, historical analytics, complex alert routing, compliance controls, and enterprise incident workflows are much harder to reproduce.
The largest individual saving in Levels' list is not a SaaS subscription.
It is labor.
He says replacing human moderation across his sites with xAI-based moderation saves around $10,000 per month.
This is where AI changes operating economics more dramatically than traditional automation.
A modern moderation stack can combine:
Submission
→ deterministic filters
→ text/image classifier
→ LLM policy check
→ confidence score
→ approve / reject / escalateThe strongest systems do not blindly send every decision to one LLM.
They use layered controls.
Low-risk cases can be approved automatically. Clear violations can be blocked. Uncertain or high-impact cases can be escalated.
That architecture can reduce human workload significantly without assuming AI moderation is perfect.
Levels says a Telegram bot replaced IFTTT workflows and saves roughly $100 per month.
This replacement is technically simple but strategically important.
A surprising amount of automation SaaS usage is just:
Trigger
→ condition
→ API request
→ notificationExamples include:
When the workflows are stable and internal, a few webhook handlers and cron jobs can replace a surprising amount of subscription software.
The boundary appears when a company needs hundreds of third-party integrations, non-technical workflow editing, complex branching, audit logs, and enterprise permissions.
At that point, rebuilding Zapier or IFTTT becomes a product of its own.
Levels says he replaced an embedded Photopea editor inside Photo AI with his own vibe-coded photo editor, estimating around $100 per month in savings.
The interesting point is not the $100.
It is product ownership.
If a photo product only needs a limited set of editing functions, a full Photoshop-style application is unnecessary.
A focused editor might only need:
Vibe coding makes these product-specific editors much cheaper to build.
Owning the editor also gives the product tighter UX control and removes dependency on a third-party embedded interface.
Levels reports replacing Mapbox with an implementation based on OpenFreeMaps, saving around $500 per month.
This works when the application mainly needs map rendering rather than the entire location platform.
A lightweight open mapping stack can cover:
But Mapbox also provides capabilities such as geocoding, directions, routing, traffic data, search, navigation, and location intelligence.
Replacing map rendering does not automatically replace all of those services.
This distinction is critical when evaluating SaaS alternatives.
Levels says his uptime monitoring now costs around $5 per month, using an Uptime Canary application running on Kuma, for estimated savings of roughly $50 per month.
Uptime monitoring is almost the perfect example of a narrow internal service.
At its simplest:
Every N minutes
→ request URL
→ check HTTP status
→ record latency
→ retry
→ alert on failureCommercial products add polished dashboards, status pages, multiple regions, escalation policies, historical metrics, and integrations.
For a small portfolio of sites, a self-hosted system may be enough.
Levels also says he replaced Ghost with his own blog platform.
No individual savings figure was provided.
This is less about infrastructure cost and more about how small the required feature surface can become.
A personal or company blog may only need:
A full CMS is useful when editorial workflows are complex.
For a solo developer, the custom version can be dramatically smaller.
Levels estimates roughly $5,000 per month in savings after moving customer support toward Featurebase plus an AI support bot.
Again, the largest saving is human labor rather than SaaS licensing.
AI support works best when the system can retrieve reliable product information and understand enough customer context to answer common questions.
A stronger architecture looks like:
Question
→ classify intent
→ retrieve documentation
→ retrieve allowed account context
→ generate answer
→ confidence check
→ human escalationBilling disputes, account security, legal complaints, refunds, and unusual edge cases should generally have stricter escalation rules.
The opportunity is not eliminating humans from every support interaction.
It is preventing humans from repeatedly answering the same predictable questions.
Levels says he now runs his own scraper for around $1 per month using Patchright, replacing ScrapingBee and SerpAPI usage and saving roughly $250 per month.
Scraping is a useful example because the code is often the easy part.
A basic architecture is straightforward:
Scheduler
→ queue
→ Patchright browser
→ load target
→ extract data
→ normalize
→ store
→ retry failuresThe hard parts are:
This means a low-volume internal scraper can be extremely cheap while a general-purpose commercial scraping platform remains difficult and expensive to reproduce.
The important question is not whether a scraper can be written.
It is whether it can maintain the required success rate at the required volume.
The most useful part of Levels' post may actually be the list of services he does not want to rebuild.
He says the remaining external services include:
His reasoning shows where the vibe-coding strategy reaches its economic boundary.
Replacing these services would mean taking responsibility for infrastructure that benefits from major economies of scale.
Going beyond using a registrar and attempting to replace the domain-registration layer means dealing with registries, accreditation, renewals, abuse processes, and critical infrastructure.
That is very different from building a screenshot API.
Running an SMTP server is easy.
Running a reliable email delivery operation is not.
A serious system must manage:
This is exactly the kind of operational burden that can make a cheap managed service worth paying for.
Replacing R2 or Backblaze with local disks sounds inexpensive until reliability requirements are included.
Then the system needs:
Storage providers spread those costs across enormous infrastructure.
A VPS provider owns the physical servers, networking, power, cooling, hardware replacement, data-center access, and connectivity.
Self-hosting the server at home may save a line item while creating an entirely new operations problem.
Running local models can make sense for some workloads, particularly at high sustained utilization.
But replacing a frontier-model provider may require expensive GPUs, inference optimization, model upgrades, redundancy, monitoring, and capacity planning.
For many small companies, buying inference remains more efficient.
Levels' stack suggests a useful rule.
Vibe code the thin software layers. Keep paying for the heavy infrastructure layers.
Good replacement candidates often look like:
Poor replacement candidates often include:
The difference is not whether something can technically be built.
Almost anything can.
The difference is whether owning it creates economic leverage.
Several replacements in the post are described as costing roughly zero.
That does not necessarily mean the service has zero economic cost.
Usually it means the incremental cost is close to zero because the underlying infrastructure is already running.
If a company already pays for a Hetzner VPS, adding a tiny screenshot worker may not materially change the monthly server bill.
But a realistic calculation should still consider:
This matters because the wrong conclusion from Levels' post would be:
Every SaaS product is overpriced and should be self-hosted.
The better conclusion is:
AI lowers the minimum size of an internal tool that is economically worth building.
The traditional decision could be simplified as:
Engineering cost > SaaS subscription
→ buy the SaaSVibe coding changes the inputs.
A better framework is:
Potential annual savings
=
SaaS fees
- infrastructure
- expected maintenance
- migration cost
- failure risk
- operational burdenThen evaluate five questions.
A team may pay for a platform with 100 features while using three.
Those three features are the true replacement target.
The presence of libraries such as Sharp, FFmpeg, Chromium, Redis, PostgreSQL, MapLibre, or mature ML models changes the economics dramatically.
AI does not need to invent the underlying technology.
It mainly needs to assemble it into the required product.
Stable internal workloads are easier to self-host.
Highly bursty or global workloads often benefit from managed infrastructure.
A broken social-image generator is inconvenient.
A broken payment system can stop revenue.
Criticality should strongly influence the build-vs-buy decision.
This is the most important constraint.
If the requirement is image resizing, build image resizing.
Do not accidentally build Cloudinary.
If the requirement is screenshots, build screenshots.
Do not accidentally build Browserless.
If the requirement is five internal automations, build five workflows.
Do not accidentally build Zapier.
A practical cost-reduction workflow looks like this:
List every recurring software and API expense from the last 90 days.
Record:
A $20/month tool is rarely worth rebuilding first.
A $2,000/month API deserves attention.
Look for services whose core function can already be handled by mature open-source software.
Examples:
Image resize → Sharp
Video processing → FFmpeg
Screenshots → Chromium
Uptime → Kuma
Maps → OpenFreeMaps / MapLibre
Browser automation → Patchright
Automation → cron + webhooks
Moderation → classifier + LLMDefine a deliberately narrow specification.
Avoid feature parity.
Do not cancel the SaaS immediately.
Compare:
The original provider should remain easy to restore during the migration period.
The goal is lower cost without creating fragile infrastructure.
Levels' numbers come from his own products, usage levels, infrastructure, and workflows.
Another company may have completely different economics.
AI can write the first version quickly.
Someone still owns production.
File processing, browser automation, scraping, and URL screenshot services all process potentially hostile input.
Isolation, network restrictions, validation, and resource limits matter.
Saving $15 per month while creating a permanent maintenance burden is usually a bad trade.
Internal replacements win because they are smaller than the SaaS product.
Feature parity destroys that advantage.
Moderation and customer support can produce large savings, but uncertain cases still need safe fallback paths.
The deeper implication of Levels' post is not simply that founders can save subscription fees.
It is that AI coding can increase software margins.
A modern SaaS business may have a cost chain like:
Revenue
→ payment provider
→ cloud hosting
→ image API
→ video API
→ monitoring
→ support platform
→ automation service
→ scraping API
→ AI APIEvery layer takes part of the margin.
Vibe coding makes it possible to collapse some of the simpler layers into internally owned software.
The emerging architecture looks more like:
Open-source primitive
+
AI-written integration layer
+
existing VPS/serverless infrastructure
+
managed services where scale really mattersThat is a much more useful interpretation than the simplistic idea of 'self-host everything.'
Pieter Levels' reported ~$25,000 per month in savings offers a strong case study for how vibe coding is changing the economics of operating internet businesses.
The most compelling replacements are narrow, high-volume services where mature open-source technology already exists: image resizing, screenshots, scraping, monitoring, uptime checks, workflow automation, moderation, customer support, and basic mapping.
At the same time, Levels' remaining SaaS stack is equally instructive.
He still pays for domain infrastructure, email delivery, object storage, backups, VPS hosting, and LLM APIs because those services benefit from reliability, physical infrastructure, network scale, or operational expertise that is expensive to reproduce.
The practical rule is straightforward:
Buy the infrastructure with strong economies of scale. Vibe code the thin software layers whose recurring markup is larger than the cost of owning them.
For teams trying to reduce SaaS spend, the best next step is to rank recurring tools by annual cost, identify which expensive products are mostly wrappers around mature open-source components, and test one deliberately narrow replacement before attempting anything broader.
More articles connected to the same themes, protocols, and tools.
Browse entries that are adjacent to the topics covered in this article.