When you’re building a SaaS company, platform as a service (PaaS) is one of the biggest infrastructure decisions you’ll make—and most founders get the analysis wrong. Here are examples of PaaS companies and frameworks to help you choose the right one for your stage.
PaaS sits between infrastructure as a service (IaaS) and software as a service (SaaS). The provider manages the underlying hardware, operating system, and middleware, while you manage applications and data. But here’s what most SaaS founders miss: choosing the wrong PaaS doesn’t just slow down development—it affects your gross margin, locks you into a vendor you can’t leave, and creates a risk discount when you try to sell.
I’ll walk you through the major platforms, the economics of each choice, and a framework to decide which one actually makes sense for your company.
Why This Choice Matters More Than CEOs Realize
If you’re running a B2B SaaS company at $5M–$15M ARR, your hosting bill probably shows up in COGS (cost of goods sold). Most founders think platform choice is purely a technical decision. It’s not.
Here’s what changes everything: your cloud provider is part of your cost structure. A cheap PaaS early on that’s easy to scale with feels great until you hit a pricing inflection point around $5M–$10M ARR—the exact moment you’re trying to improve gross margin for exit. Bad vendor choice at scale costs you $500K–$2M annually in unnecessary COGS.
Worse, switching costs are brutal. If your database schema is locked into Heroku Postgres, your app is deployed across AWS Elastic Beanstalk, and your team knows only that stack, ripping it out is a 3–6 month engineering project. Acquirers see that as key-person risk and vendor lock-in—both cut your multiple.
This matters for your economics, your optionality, and your exit.
PaaS vs IaaS vs SaaS vs FaaS — One Table, Decided
Before diving into specific platforms, let’s clear the definitions. These categories overlap in confusing ways.
| Layer | Provider Controls | You Control | Responsibility | Unit Economics | Best For |
|---|---|---|---|---|---|
| IaaS | Hardware, OS, middleware | Application, data, runtime | You manage scaling, patching, uptime | You pay for compute hours (no discount on scale) | Early-stage startups, experimental projects |
| PaaS | Hardware, OS, middleware, some runtime | Application, data | Platform handles scaling & patches; you deploy code | Volume discounts kick in; COGS declines per customer | $1M–$50M ARR; stable product; repeatable workload |
| SaaS | Everything | Just use it | Vendor manages all ops | Per-seat licensing; predictable cost | Departments buying from you, not building |
| FaaS | Hardware, OS, middleware, runtime | Individual functions | You write code; platform invokes & scales on demand | Pay-per-invocation; true variable cost | Event-driven workloads, spiky traffic, APIs |
The key insight: PaaS sits in a sweet spot for scaling SaaS companies. You get operational leverage (the platform handles deployments, monitoring, scaling) without the commitment of rolling your own infrastructure. But you’re also more locked in than IaaS—which is why the lock-in risk matters.
The 4 Questions to Ask Before Picking a PaaS
Don’t start with “Which platform is coolest?” or “Which one does my CTO know?” Start here:
1. Does This Decision Show Up in COGS or R&D?
Cloud hosting goes in COGS. That means it directly affects your gross margin, which is the #1 metric acquirers look at.
If you’re at $5M ARR with 75% gross margin and your PaaS bill climbs to 20% of revenue (instead of 10%), you’re now at 65% gross margin — a multiple killer. That 10pp gross-margin swing costs you roughly $500K in annual gross profit, which at a 5× EBITDA multiple is $2.5M+ of enterprise value. At growth-premium multiples (8–10×), it’s $4M–$5M gone.
Ask yourself: as I scale from $5M to $20M ARR, does this platform’s per-customer cost stay flat, decrease, or increase? Spot instances and volume discounts exist, but only if you engineer for them.
2. What’s My Switching Cost If I Need to Leave?
Switching cost has two parts: engineering (how long to migrate?) and operational (how risky is the re-platform?).
Heroku is easy to leave (you’re just moving a Docker container). AWS Elastic Beanstalk locks you into AWS-specific RDS, VPC, and networking features. Salesforce Lightning binds you to the entire Salesforce ecosystem.
Your switching cost is: (estimated engineering weeks) × (loaded cost per engineer) + (revenue risk during migration) + (unplanned downtime cost if something breaks).
If that number is > $500K, the platform has vendor lock-in power over you. That matters when you’re negotiating with an acquirer—they’ll discount your valuation because they might need to rip-and-replace your infrastructure.
3. Does This Platform Force Me to Run More Engineers or Fewer?
Managed platforms (Heroku, DigitalOcean App Platform) reduce headcount. You don’t hire a DevOps engineer.
Roll-your-own platforms (Kubernetes-based, like OpenShift) add headcount. You now need someone who understands orchestration, scaling policies, networking.
If you’re sub-$5M ARR and lean on engineering headcount, a managed platform is a force multiplier. If you’re $15M ARR with an ops team, the overhead of self-managed infrastructure might be worth the cost control.
The question isn’t “Which is cheaper?” It’s “Which lets my engineering team ship faster?”
4. Would an Acquirer See This Lock-In as a Risk?
Buyers of SaaS companies run a technical due diligence process. Part of it is: “If we had to migrate this product off the current platform, how painful is that?”
Platforms that are easy to migrate away from (and don’t offer any unique advantage) are neutral. Platforms that lock you in (and don’t offer compensating value) are liabilities.
Example: If you chose Heroku because “it was easy to get started,” but Heroku doesn’t offer anything unique your acquirer couldn’t replicate in AWS in 2 weeks, you picked wrong. The lock-in is a cost with no benefit.
But if you chose a platform like Salesforce Lightning because your entire product is an extension of Salesforce (and your ICP is Salesforce-first), then the lock-in is inseparable from the product value. An acquirer gets that and doesn’t discount.
The 13 Leading PaaS Companies
I’ve evaluated these platforms across the four questions above. Here’s what you need to know about each.

1. AWS Elastic Beanstalk
AWS Elastic Beanstalk is a fully managed application deployment service within AWS. You upload your application code, and Beanstalk handles the infrastructure—servers, load balancing, autoscaling, and monitoring. It supports Python, Java, PHP, C++, .NET, Ruby, Go, and Node.js.
What it’s best for: Teams already in the AWS ecosystem. If you’re using RDS, S3, Lambda, and other AWS services, Beanstalk is the natural hosting layer. It’s also solid for teams with ops experience who want to avoid managing Kubernetes but want fine-grained control over their infrastructure.
Pricing & cost reality: Elastic Beanstalk itself is free—you pay for the underlying EC2 instances, RDS databases, and data transfer. A typical small workload (2–4 t3.medium instances) runs $200–$500 monthly. At scale, the cost advantage appears if you have variable traffic (autoscaling down during off-hours). But unlike managed platforms, you still need to optimize instance types and termination policies—or you’ll overpay.
CEO-level tradeoff: Lock-in is high. You’re using AWS-native features (VPC, security groups, IAM roles, RDS) that don’t port elsewhere. Switching to Azure or GCP requires rewriting network layer and database connectivity. Switching cost is 4–8 weeks of engineering work. But the upside is cost control and fine-grained security. Acquirers don’t discount for Elastic Beanstalk specifically—it’s table stakes in SaaS.

2. Microsoft Azure
Azure is Microsoft’s public cloud platform, offering PaaS through App Service (managed web hosting), SQL Database, and integrated development tools. It’s tightly coupled with Visual Studio, .NET, and Microsoft’s ecosystem—but it also supports Node.js, Python, Java, and Go.
What it’s best for: Enterprise companies with existing Microsoft deployments (Active Directory, Exchange, Office 365, Dynamics). If your customer base is Enterprise and requires compliance with Microsoft’s data residency or security standards, Azure has native integrations that reduce friction. Also strong for companies building hybrid deployments (on-premises + cloud).
Pricing & cost reality: App Service starts at $12–$100+ monthly depending on tier (free tier available for testing). Database costs scale with size and throughput. A mid-market workload (B2 app service tier + SQL Standard) runs $300–$1,000 monthly. Azure’s pricing is more opaque than AWS—the calculator can be confusing, so watch for surprise overages in data egress and database backups.
CEO-level tradeoff: Medium lock-in. You’re not locked into Azure-specific formats like Beanstalk is locked into AWS services, but switching off Visual Studio tooling and Azure-native services (AD, Key Vault) is annoying. Medium switching cost (2–4 weeks). Acquirers appreciate the Microsoft integration if your customer base is also Microsoft-heavy, but don’t otherwise view it as a strategic advantage.
3. Google App Engine
Google App Engine is a serverless platform (autoscaling, no servers to manage) that runs Node.js, Python, Java, Go, and PHP. It auto-scales from zero to thousands of instances based on traffic. You deploy code, and App Engine handles the rest.
What it’s best for: Startups at $2M ARR with spiky or unpredictable traffic. The “scale to zero” model is perfect for early-stage workloads—you pay only for traffic you actually handle. Also ideal if you’re heavily using Google Cloud services (BigQuery, Firestore, Pub/Sub) and want a cohesive ecosystem.
Pricing & cost reality: Pay-per-request pricing. A typical early-stage app (10–50 requests per second) costs $100–$500 monthly. The advantage is you don’t pay for idle capacity. The trap: as you grow beyond ~500 requests per second, the per-request cost becomes inefficient compared to reserved instances on AWS or Azure. Switch point is usually around $1M–$2M ARR.
CEO-level tradeoff: Low switching cost early (you’re just moving a containerized app). But as you grow, you hit Google Cloud’s pricing inflection where serverless becomes expensive and you’ll want to migrate to Compute Engine or another provider. Medium lock-in to Google Cloud’s ecosystem (BigQuery, Pub/Sub). Acquirers don’t see this as a risk—just a routine migration.

4. Heroku
Heroku is a container-based PaaS where you push a Git repository and Heroku builds and deploys your application. It abstracts away infrastructure entirely—no servers, security groups, or load-balancing configuration. Supports Node.js, Python, Ruby, Java, Go, PHP, Scala, and Clojure.
What it’s best for: Bootstrapped or early-stage SaaS companies ($3M ARR) with small to medium workloads. The 10-minute onboarding and “deploy with a Git push” model is unbeatable for speed. Also strong for teams with limited ops experience—you get a working product in production in hours, not weeks.
Pricing & cost reality: This is where Heroku becomes controversial. Dynos (application containers) start at $7/month for hobby tier (limited) or $25+/month for production tier. A small workload (1x web dyno + 1x worker dyno + Postgres) costs $100–$200 monthly. But at scale, Heroku becomes expensive. The same workload on AWS costs $30–$50 monthly. At $5M ARR, switching off Heroku to AWS saves $500K–$1M annually—and founders realize they overpaid for 3 years.
CEO-level tradeoff: High switching cost to performance. You’re paying a 5–10x markup on compute hours for simplicity. That’s fine at $1M ARR. It’s a material COGS leak at $5M+ ARR. Lock-in is low (migrating a Heroku app to AWS is straightforward). Acquirers don’t penalize you for Heroku—they just add “re-platform” as a line item in their 100-day plan. If you stay on Heroku past $3M ARR, you’re leaving money on the table.

5. IBM Cloud Foundry
IBM Cloud Foundry is an enterprise-grade open-source PaaS based on the Cloud Foundry framework. It runs on-premises or in the cloud, handles application deployment, and provides middleware (databases, message queues, caching). Supports Java, Python, Node.js, Go, and others.
What it’s best for: Enterprise companies with strict data residency or compliance requirements (financial services, healthcare). If you need to run your application in a private data center and still get PaaS benefits, Cloud Foundry is the standard. Also strong for hybrid deployments (some workloads on-premises, others in cloud).
Pricing & cost reality: If you’re using IBM Cloud’s managed Cloud Foundry, pricing is similar to Azure (pay for compute and storage). If you’re running it on-premises, you pay licensing costs + infrastructure. Hard to generalize—talk to IBM. Small workloads: $200–$500/month managed. Large workloads with hybrid requirements: $5K–$20K/month.
CEO-level tradeoff: This is enterprise-grade infrastructure. You get compliance, security, and operational maturity—but at the cost of complexity and inflexibility. Lock-in is very high (you’re deeply integrated with Cloud Foundry internals). Medium switching cost (4–8 weeks to migrate out). Acquirers respect Cloud Foundry in regulated industries, but view it as a strategic necessity, not a differentiator.

6. Red Hat OpenShift
Red Hat OpenShift is a Kubernetes-based container platform that can run on-premises, on AWS, Azure, GCP, or hybrid. It abstracts Kubernetes complexity away—you deploy containers and OpenShift handles orchestration, networking, and scaling. Supports any containerized workload.
What it’s best for: Mid-market companies ($10M–$50M ARR) with cloud-agnostic requirements. If you want to avoid single-cloud lock-in, OpenShift lets you run the same Kubernetes cluster across multiple cloud providers. Also ideal for complex, containerized applications with strict networking or compliance needs.
Pricing & cost reality: OpenShift is sold as a subscription ($0–$5K per month managed, varies by support tier). You pay on top of the underlying cloud provider’s compute costs. A medium workload on OpenShift: $2K–$5K/month total (cloud provider + OpenShift subscription). More expensive than bare Kubernetes, but the operational simplicity and portability justify it for large teams.
CEO-level tradeoff: Lock-in is medium (Kubernetes is portable; OpenShift-specific features are not). Switching cost is low if you stick to standard Kubernetes features, higher if you use OpenShift-specific tooling. Acquirers don’t view Kubernetes-based deployments as a risk—it’s the industry standard for scale. Major advantage: you’re not locked into AWS or Azure’s proprietary services.
7. Oracle Cloud Platform
Oracle Cloud Platform offers PaaS through Oracle Database Cloud, Application Container Cloud, and various managed services. It’s built for companies already invested in Oracle technologies (Database, Enterprise apps).
What it’s best for: Enterprise companies running Oracle databases and ERP systems who want a cloud-native path forward. If your core application is Oracle Database-dependent, Oracle Cloud offers tight integration. Also strong for businesses with long-term Oracle licensing agreements who can consolidate on Oracle infrastructure.
Pricing & cost reality: Oracle uses a complex consumption model. A basic workload (Oracle Database + Application Container) might cost $500–$2K monthly. Enterprise agreements can be much higher. The pricing advantage comes if you’re consolidating Oracle licenses (on-premises + cloud) onto a single Oracle Cloud contract—potentially saving 20–30% versus running separately.
CEO-level tradeoff: Very high lock-in. You’re deeply embedded in Oracle’s ecosystem. Switching to another database or cloud provider requires a full re-architecture. Switching cost is 6–12 weeks of engineering. But this lock-in is only a risk if you’re not happy with Oracle—and most companies choosing Oracle Cloud are happy because they’re already Oracle-dependent. Acquirers expect this and don’t discount.

8. SAP HANA Cloud
SAP HANA Cloud is a cloud-native database and application platform. It’s designed for in-memory analytics and transactional processing. You deploy applications that work with SAP HANA’s database engine, gaining sub-second query performance on massive datasets.
What it’s best for: Companies with high-volume analytics workloads or real-time reporting requirements. If your application involves ingesting 100+ GB of data daily and running complex joins instantly, HANA’s in-memory architecture is unmatched. Also strong for companies extending existing SAP ERP systems with cloud-native applications.
Pricing & cost reality: SAP HANA Cloud pricing is based on data volume and compute tier. A starter configuration: $1K–$3K monthly. Enterprise deployments: $10K–$50K+ monthly. It’s expensive because the in-memory storage is costly. But if you need real-time analytics at scale, the speed justifies the cost.
CEO-level tradeoff: Extreme lock-in to HANA’s architecture. The database schema and query logic are HANA-specific and don’t port to Postgres or MySQL. Switching cost is 8–12 weeks (requires rewriting application data layer and analytics logic). But if you have a analytics-first product, this lock-in is inseparable from the product value—an acquirer expects it.
9. DigitalOcean
DigitalOcean is a developer-friendly cloud platform offering simplified IaaS (Droplets—VMs), managed databases, and a container registry. More recently, it launched App Platform, a managed PaaS for deploying containerized applications. Supports Node.js, Python, Go, Ruby, and custom containers.
What it’s best for: Startups and small teams ($5M ARR) who want simplicity without complexity. DigitalOcean’s UI and documentation are the best in the industry—significantly clearer than AWS’s. Also ideal for developers who want to avoid cloud provider lock-in while still getting managed services (databases, load balancing).
Pricing & cost reality: Droplets start at $5/month (for tiny workloads, not production). A realistic small production workload (2x $12 Droplets + Managed Postgres) costs $60–$100 monthly. App Platform pricing is $0–$500 monthly depending on compute. DigitalOcean’s pricing is typically 30–50% cheaper than AWS for equivalent workloads at small scale.
CEO-level tradeoff: Low lock-in. DigitalOcean uses standard Linux, Postgres, and containerization—nothing proprietary. Switching to AWS or another provider is straightforward. Switching cost is low (2–4 weeks). Acquirers don’t view DigitalOcean as a strategic problem—it’s simple enough to migrate. The trade-off is that DigitalOcean doesn’t offer the advanced services (machine learning, advanced analytics) that AWS does.

10. Pivotal Cloud Foundry (Now VMware Tanzu)
Pivotal Cloud Foundry (now rebranded as VMware Tanzu) is an enterprise-grade Kubernetes-based platform. It simplifies Kubernetes management and provides pre-built application services. Owned by VMware, used primarily in regulated industries.
What it’s best for: Enterprise companies (>$20M ARR) with complex Kubernetes requirements and strict operational governance. If you need to run containers at scale with centralized security, compliance, and resource management, Tanzu provides the abstraction layer. Also strong for companies with existing VMware infrastructure.
Pricing & cost reality: Tanzu is sold as a subscription ($300–$3K+ per month) plus cloud provider costs. A medium deployment: $2K–$5K/month total. Expensive, but the operational simplicity and compliance automation justify it for large organizations.
CEO-level tradeoff: Medium lock-in to Kubernetes and Tanzu-specific tooling. Switching away requires moving to plain Kubernetes or another orchestration platform (3–6 months of work). But Kubernetes itself is portable. Acquirers view Tanzu neutrally—it’s enterprise infrastructure that doesn’t solve a business problem by itself, just enables operations.

11. Mendix
Mendix is a low-code/no-code application development platform (owned by Siemens). Instead of writing code, you build applications visually, dragging and dropping components. It’s designed for non-developers and citizen developers—enabling business teams to build apps without a large engineering department.
What it’s best for: Enterprise customers and government agencies who need rapid application delivery with minimal engineering headcount. Mendix reduces time-to-market for CRUD applications (forms, workflows, reporting) from weeks to days. Also strong for companies building multiple internal tools or department-specific applications.
Pricing & cost reality: Mendix is usage-based. Pricing starts around $1K–$5K per month for small applications and scales to $10K–$50K+ for enterprise deployments. The cost advantage: you need fewer engineers (or no engineers). A typical business team might deliver 5–10 applications with 1 FTE instead of needing 5 FTEs to write custom code.
CEO-level tradeoff: Very high lock-in. Applications built in Mendix are Mendix-proprietary and require Mendix to run. Switching cost is not measured in engineering weeks—it’s a full rewrite in a different platform. But this lock-in is by design. If you’re using Mendix, you’re in it for the long term. Acquirers know this and price it in. The question is: does the application built in Mendix solve a core business problem? If yes, the lock-in is acceptable. If no, it’s a liability.
12. Engine Yard
Engine Yard is a managed PaaS specifically designed for Ruby on Rails, Node.js, and PHP applications. It handles deployment, monitoring, scaling, and operational overhead. Acquired by Remedy but still operating, it serves developers who want a Rails-native platform without the Heroku premium.
What it’s best for: Startups with Ruby on Rails applications who want Heroku-like simplicity at 50% the cost. Also good for teams that need more customization than Heroku allows but less complexity than rolling your own infrastructure.
Pricing & cost reality: Engine Yard pricing starts around $100–$300 monthly for small deployments. At scale (10+ instances), costs are typically 40–60% lower than equivalent Heroku workloads. For a startup at $1M–$5M ARR with a Rails app, Engine Yard saves $50K–$200K annually compared to Heroku.
CEO-level tradeoff: Low to medium lock-in. Engine Yard uses standard Ruby, Node, and PHP—so switching away is straightforward. But you’re still dependent on Engine Yard’s platform for deployments and scaling, so moving to self-managed infrastructure requires work (3–6 weeks). Acquirers view Engine Yard as equivalent to Heroku—a convenience cost that you’ll eliminate post-acquisition.

13. Salesforce Lightning
Salesforce Lightning is a low-code platform for building custom applications within the Salesforce ecosystem. You drag and drop components to build custom apps, business processes, and automations. It’s tightly integrated with Salesforce CRM, Einstein AI, and Salesforce data.
What it’s best for: Companies selling to Salesforce-native customers. If your product is an extension of Salesforce or requires Salesforce CRM data to function, Lightning lets you build inside Salesforce and reach customers directly. Also strong for building internal Salesforce apps (sales tools, marketing automation, support workflows).
Pricing & cost reality: Lightning development is included in Salesforce licenses. If you’re building an app for internal use, you’re just paying Salesforce’s base license (~$100–$500 per user monthly). If you’re building an app for external customers, you can sell it via Salesforce AppExchange and pay Salesforce a commission (typically 10–20%).
CEO-level tradeoff: Extreme lock-in—by design. A Lightning app is a Salesforce app and can’t run outside Salesforce. But this lock-in is strategic for the right business. If your entire market is Salesforce customers and you’re trying to integrate with their workflows, Lightning is the right choice. Acquirers acquiring a Salesforce-native product expect this lock-in and pay accordingly. The risk only appears if you’re building on Lightning and your market isn’t actually Salesforce-centric.
Picking the Right PaaS Category — A Decision Tree
You now have examples of PaaS companies across different categories. But which category fits your stage?
The 5 Types of PaaS, and When Each Makes Sense at Your Stage
1. Public PaaS
Public PaaS (AWS Elastic Beanstalk, Heroku, DigitalOcean App Platform, Google App Engine) runs on the vendor’s public cloud. The vendor manages all infrastructure. You control your application and data.
When to use: Default choice for startups at $15M ARR. You get fast deployments, autoscaling, and cost-efficient compute. No on-premises complexity.
Trade-off: You’re dependent on the vendor’s pricing, uptime, and API compatibility. But that’s acceptable at early stage because switching cost is low (2–4 weeks of migration).
At what stage to reconsider: Around $5M–$10M ARR, as you grow, revisit whether the PaaS vendor’s pricing is still cost-effective. Heroku becomes expensive. AWS Elastic Beanstalk becomes optimizable. DigitalOcean stays competitive.
2. Private PaaS
Private PaaS (IBM Cloud Foundry, OpenShift running on-premises) runs inside your own infrastructure or a private cloud. The vendor provides the platform; you provide the hardware. You get PaaS benefits (automated deployment, scaling, monitoring) while controlling data location.
When to use: When compliance or data residency mandates that data never leave your infrastructure. Financial services, healthcare, government agencies. Also used when you have existing on-premises infrastructure and want to cloud-ify it gradually.
Trade-off: You manage the underlying hardware, security patches, and disaster recovery. You also need more ops headcount. Not cost-effective unless you have strict regulatory requirements or are consolidating existing infrastructure.
At what stage to reconsider: Only use this if you have no choice (regulatory requirement) or are already running significant on-premises infrastructure.
3. Hybrid PaaS
Hybrid PaaS (OpenShift, Azure Stack, AWS Outposts) runs across both public cloud and on-premises infrastructure. You deploy once and scale across both environments. Useful when you’re gradually migrating from on-premises to cloud.
When to use: During a long migration from data center to cloud. You run production on-premises today but want to gradually move workloads to the cloud. Hybrid PaaS lets you do this without re-architecting.
Trade-off: Complex operational model. You’re managing two infrastructure stacks instead of one. Requires significant ops investment.
At what stage to reconsider: Typically a 3–5 year strategy for large enterprises. Not relevant for startups unless you have inherited on-premises infrastructure you’re stuck with.
4. Mobile PaaS
Mobile PaaS (Firebase, AWS Amplify) is optimized for mobile and web applications. Built-in authentication, real-time databases, push notifications, and analytics. Designed for teams building consumer or mobile-first apps.
When to use: If your product is primarily mobile (iOS/Android) or you’re building a consumer app. Mobile PaaS handles push notifications, offline sync, and authentication out of the box.
Trade-off: Opinionated toward mobile use cases. Not great if you’re building complex server-side logic or need custom infrastructure.
At what stage to reconsider: Start on Mobile PaaS for consumer apps. By $5M ARR, you may want to transition to a more flexible platform if you’ve outgrown the opinionated defaults.
5. Open PaaS
Open PaaS (Cloud Foundry, Kubernetes, OpenStack) are open-source platforms you can deploy yourself. You maintain the platform, not a vendor. Useful when you want to avoid vendor lock-in or run across multiple clouds.
When to use: Mid-market companies ($10M–$50M ARR) who want cloud-agnostic infrastructure. Also used by companies building internal platforms for many application teams.
Trade-off: You own the operational burden. You’re responsible for security patches, upgrades, and performance tuning. Requires expert ops headcount.
At what stage to reconsider: Don’t adopt Open PaaS until you have 2–3 engineers dedicated to infrastructure. Before that, use managed platforms.
Common Mistakes Founders Make with PaaS Decisions
Most of these mistakes cost $100K–$1M by the time you realize them. Here’s how to avoid them:
1. Picking the Platform Your CTO Knows Instead of What Matches Your Economics
Your CTO might love Kubernetes because they learned it at Google. But if you’re at $3M ARR with a small team, Kubernetes is overkill—you’re spending 0.5 FTE on infrastructure that a managed platform handles. Pick the platform that matches your stage, not your tech bias.
The test: If you need to hire a new engineer to operate the platform, you picked the wrong platform.
2. Underestimating Egress Fees and Per-Service Costs
AWS has made a fortune on egress charges (data leaving AWS). Azure charges for outbound data transfer. These fees are real and compound at scale.
If your application streams 10 TB of data monthly from AWS S3 to a third-party analytics tool, you’re paying $900/month in egress. Over 3 years, that’s $32K.
The test: Calculate your estimated data transfer before committing to a platform. Use the cloud provider’s calculator.
3. Picking “Free Tier” When Your Scale Will Destroy You at Pricing Cliff
Google App Engine has a generous free tier. Heroku has a free tier. Firebase has a free tier. All of them have pricing cliffs—the moment you exceed the free tier, costs jump 10–100x.
If you build on the free tier, get traction, and then hit the pricing cliff at $3K/month when you expected $300/month, you’ve underestimated your go-to-market costs.
The test: Do paid capacity planning from day 1. Don’t build on free tiers.
4. Letting Your CTO Lock You Into Kubernetes Complexity You Don’t Need
Kubernetes is powerful and can scale infinitely. But you don’t need it at $10M ARR. You need simplicity.
If your CTO insists on Kubernetes because “it scales,” but you’re running 3 instances of a relatively simple application, you’re paying for complexity that doesn’t serve you. You’ve hired an ops engineer who’s underutilized.
The test: If you can’t articulate why Kubernetes solves a business problem (not a technical preference), don’t use it.
5. Not Revisiting the Decision as You Scale
You picked Heroku at $0 ARR, and it was perfect. At $2M ARR, it’s still good. At $5M ARR, it’s costing you $1M annually more than AWS. You’ve just been paying the premium on autopilot.
The test: Every 18 months (or at major revenue milestones), run a cost-benefit analysis on your platform. Would it save more to migrate than to stay?
How PaaS Choice Shows Up in Your Exit
This is the part most founders miss until they’re in the M&A process.
When a buyer evaluates your company, they run financial models to estimate post-acquisition profitability. Part of that model is COGS.
If your COGS is 25% of revenue due to inefficient PaaS pricing, the buyer models 15% COGS post-acquisition (after they optimize on their infrastructure). The difference—10 percentage points—is worth 15–25% of your company’s valuation.
Here’s a concrete example. Company A and Company B both have $10M ARR and 75% gross margin.
- Company A: Chose Heroku early. At scale, costs $1.5M annually. Gross margin: 70%.
- Company B: Chose AWS Elastic Beanstalk early. At scale, costs $500K annually. Gross margin: 75%.
Both companies are at $10M ARR, but the buyer sees:
- Company A: $10M × 70% = $7M gross profit today. Post-migration off Heroku (saves ~$1M/yr): $10M × 80% = $8M gross profit. Upside: $1M of annualized gross profit.
- Company B: $10M × 75% = $7.5M gross profit today. Post-optimization (tighter instance sizing, reserved pricing): $10M × 77% = $7.7M gross profit. Upside: $200K.
Company B gets a higher valuation because there’s less operational arbitrage left for the buyer to capture. The buyer pays for efficiency — they won’t pay twice for savings they have to deliver themselves.
At a 5× EBITDA multiple, the $1M gross-profit upside for Company A is worth roughly $5M of enterprise value to the buyer — but the buyer keeps most of that because they’re the ones executing the migration. Company B’s already-optimized state is worth $2M–$5M more in enterprise value because the buyer doesn’t have to discount for migration risk. On a $10M ARR business likely trading at $40M–$80M, that’s a 5–10% swing in sale price.
Beyond COGS, acquirers also look at vendor lock-in risk. If you’re on Heroku and need to migrate post-acquisition, they discount your valuation because they’re buying an integration project, not a stable business. If you’re on AWS with no vendor-specific features, there’s no lock-in risk and they don’t discount.
The PaaS choice you make at $500K ARR shows up in your exit at $10M ARR. Choose carefully.
FAQ
Is PaaS cheaper than IaaS?
At early stage ($1M ARR), PaaS is typically cheaper because you’re paying for simplicity, not raw compute hours. But at scale (>$5M ARR), IaaS (AWS EC2, Azure VMs) often becomes cheaper per unit of compute. The trade-off is operational complexity: IaaS requires ops headcount; PaaS is more hands-off.
The real question isn’t “Which is cheaper?” but “What’s your total cost of ownership?” If PaaS saves you a half-time ops engineer, and that engineer costs $80K annually, then paying $100K/year on PaaS is a win.
What’s the difference between PaaS and SaaS?
PaaS is a platform you use to build applications. You write code, deploy to the platform, and the platform runs it.
SaaS is a finished application that end-users buy. You use SaaS (e.g., Salesforce, Slack); you build on PaaS (e.g., Heroku, AWS Elastic Beanstalk).
As a SaaS founder, you’re both building on PaaS and selling SaaS. You might deploy your application to Heroku (PaaS) and sell access to it as a SaaS product.
Can you migrate from one PaaS to another?
Yes, but the effort depends on which platforms you’re migrating between.
Easy migrations (2–4 weeks): Heroku → AWS, DigitalOcean → AWS, Engine Yard → AWS.
Medium migrations (4–8 weeks): Google App Engine → AWS (requires rewriting serverless logic), Salesforce Lightning → custom app (major rewrite required).
Hard migrations (8–16 weeks): Oracle Cloud → AWS, SAP HANA Cloud → different database (requires data layer rewrite), Kubernetes → AWS (requires re-architecting orchestration).
The rule: lower lock-in means faster migration.
Is Heroku still worth it?
Heroku is worth it only if you’re at $2M ARR and your engineer time is the constraint (not cloud spend). At that stage, Heroku’s simplicity is a 10x productivity multiplier.
But if you’re >$2M ARR and not growing engineering headcount faster than revenue, move to AWS or DigitalOcean. Heroku’s premium becomes hard to justify.
Do enterprise SaaS companies use PaaS or roll their own?
Sub-$5M ARR: Mostly use PaaS (Heroku, AWS Elastic Beanstalk, DigitalOcean). Speed and simplicity matter more than cost optimization.
$5M–$20M ARR: Mix of PaaS and managed Kubernetes (EKS on AWS, AKS on Azure). Some platforms still use Heroku, but they’ve often started thinking about a migration.
$20M+ ARR: Often on bare Kubernetes or self-managed infrastructure (rolling their own). At this scale, they have enough engineers to manage the complexity and justify the cost savings.
But there are exceptions. If your product has unique infrastructure requirements (real-time analytics, complex state management), you might roll your own at any scale.
Conclusion
The 13 PaaS companies I’ve outlined serve different stages and use cases. There’s no universally “best” platform—only the best platform for your economics, team, and stage.
Start with the 4 questions:
- Does this decision show up in COGS or R&D?
- What’s my switching cost if I need to leave?
- Does this platform force me to run more engineers or fewer?
- Would an acquirer see this lock-in as a risk?
Answer those first. The platform choice will follow.
And one more: revisit the choice every 18 months. The platform that’s perfect at $1M ARR might be costing you $500K annually at $5M ARR. The best time to migrate was yesterday; the second best time is today.

