Choosing hosting for your Indian startup: shared vs VPS vs cloud
10 min read · 05-Feb-2024
villagehosting.in team
5 February 2024
Indian startups fail for many reasons. Overspending on infrastructure before product-market fit is one of them. Underspending and getting your app taken down by shared hosting resource limits during a launch spike is another. The right hosting choice depends on where you are, not where you plan to be.
This guide is about web applications, not marketing sites
If you're building a product (SaaS, marketplace, app with a backend), read this guide. If you're building a marketing site or blog for your startup, a managed WordPress hosting or a static site on Vercel/Cloudflare Pages is the right call — and the rest of this guide isn't for you.
Stage 0: Idea validation (pre-revenue)
What you need: Something live that potential customers can look at or use. Speed of deployment matters more than reliability or performance.
Right choice: Managed PaaS (Platform as a Service)
- Railway or Render: Deploy a Node.js, Python, or Ruby app in minutes with a git push. Free or near-free tiers available.
- Supabase: PostgreSQL database with a generous free tier and instant API generation — no backend code for basic CRUD.
- Vercel / Netlify: Deploy a Next.js or React frontend for free with global CDN. Connect to any backend API.
Why not VPS at this stage?: Server configuration takes hours you should spend validating your idea. If nobody wants your product, the VPS setup time was wasted.
Indian-specific note: Railway and Render have data centers in Singapore (50–100ms from India). This is acceptable for validation. Fix it at the next stage.
Monthly cost: ₹0–1,000 using free tiers.
Stage 1: Early users / MVP live (0–100 paying customers)
What you need: A stable, always-on environment for your first real users. You need to start caring about uptime and data safety.
Right choice: Single managed VPS
A ₹1,000–2,000/month VPS in an Indian data center (Bengaluru/Mumbai/Chennai) is appropriate:
- 2 GB RAM handles Node.js, Django, or Laravel with 100–500 concurrent users
- PostgreSQL or MySQL runs comfortably with 100,000 rows
- Single VPS is simple to manage and debug
Stack recommendation for Indian SaaS MVPs:
VPS: 2 GB RAM, 50 GB SSD, Bengaluru
OS: Ubuntu 22.04
Web server: Nginx
App: Node.js (Express/Fastify) or Python (FastAPI/Django)
DB: PostgreSQL (same server, with daily automated backups to Backblaze B2)
Cache: Redis (for sessions and API rate limiting)
Process manager: PM2 (Node.js) or Gunicorn + Supervisor (Python)
SSL: Let's Encrypt via Certbot
What to set up from day one:
- Automated daily database backups to off-server storage
- Uptime monitoring (UptimeRobot free tier)
- Error tracking (Sentry free tier — critical for catching production bugs)
- Log management (
pm2 logsorjournalctlwith log rotation)
Monthly cost: ₹1,500–3,000 (VPS + Backblaze B2 storage).
Use managed database only if your team has no DevOps
Setting up PostgreSQL on your VPS is straightforward with good documentation, and saves ₹2,000–5,000/month vs managed DB services at this stage. When you have a dedicated backend engineer, they can handle it. Only move to managed DB (RDS, Supabase) when the operational overhead genuinely outweighs the cost savings — typically at 10+ engineers or strict compliance requirements.
Stage 2: Growth (100–1,000 active users)
What you need: Reliability improvements, ability to deploy without downtime, separation of concerns.
Right choice: VPS with separate database server, or move to cloud
Option A: Two-VPS setup (₹3,000–5,000/month)
Web VPS: 4 GB RAM — runs your application server(s)
Database VPS: 4 GB RAM — PostgreSQL or MySQL only, private network
Benefits:
- Database has dedicated RAM (no competition with application)
- Can scale each independently
- Database server not exposed to internet
Option B: Cloud with managed services (₹5,000–15,000/month)
Move to AWS, Google Cloud, or Azure with:
- Compute: EC2/GCE instance (Mumbai region for India)
- Database: RDS PostgreSQL or Cloud SQL (managed, automated backups, failover)
- Redis: ElastiCache or Memorystore
- File storage: S3 or Cloud Storage
When Option A is right: You have a technical founder who can manage two servers. You want to keep costs low.
When Option B is right: You have a funded startup with a DevOps budget. You need compliance certifications (SOC 2, ISO 27001) that require managed services. Your team doesn't have server management expertise.
CI/CD becomes essential here: Set up GitHub Actions or GitLab CI to deploy automatically:
# .github/workflows/deploy.yml
- Run tests
- Build Docker image or compile assets
- Deploy to VPS via SSH (rsync or Docker pull)
- Run migrations
- Restart app server
Zero-downtime deployments matter when users are paying. Blue-green or rolling deployments prevent the 30-second outage during each deploy.
Stage 3: Scale (1,000+ concurrent users)
What you need: Horizontal scaling, load balancing, CDN, database read replicas.
Right choice: Cloud with load balancing
This is a large topic, but the key architectural changes:
Load balancing: Multiple application server instances behind a load balancer. AWS ALB, GCP Load Balancer, or a dedicated Nginx load balancer VPS. Stateless application design is required — sessions in Redis, no local file storage.
CDN: Cloudflare or AWS CloudFront for static assets. Puts your JS, CSS, and images at edge nodes close to Indian users.
Database read replicas: Route read queries (SELECT) to replica, write queries (INSERT/UPDATE/DELETE) to primary. Reduces database bottleneck for read-heavy applications.
Object storage: Move user uploads and media from local disk to S3/Cloud Storage. Required for horizontal scaling (multiple servers can't share local disks).
Monthly cost at scale: Highly variable — ₹20,000–200,000/month depending on traffic. AWS Mumbai region pricing for a medium-traffic SaaS: ~₹30,000–50,000/month.
Indian-specific infrastructure considerations
Data residency: India's Digital Personal Data Protection Act (DPDP Act) has data localization requirements for certain types of data. For consumer apps, keeping Indian user data in Indian data centers is advisable even before legal requirements crystallize.
Indian cloud providers: AWS (Mumbai), Azure (Pune+Chennai), Google Cloud (Delhi+Mumbai) all have Indian regions. Jio Cloud and Tata Communications offer Indian alternatives for companies with specific localization requirements.
Payment processing infrastructure: If you're processing payments, PCI DSS compliance is required. Using Razorpay or PayU means they handle the PCI scope for card data. Your servers only handle tokens. This significantly reduces your compliance burden — don't try to store card numbers yourself.
GST and hosting billing: Cloud providers bill in USD. Use a credit card with low/no forex fees (NiYO, HDFC Diners Club). Most cloud providers also offer billing through Indian resellers (Rackspace India, Cloud4C) who can invoice in INR with GST.
Common startup hosting mistakes in India
Over-engineering too early: Kubernetes for 500 users is wasted complexity. A well-configured VPS handles more traffic than most Indian startups see in their first two years.
Choosing foreign data centers to save money: A ₹500/month Singapore VPS gives 100ms latency to Indian users. A ₹1,200/month Indian VPS gives 10–30ms. For interactive applications, the experience difference is significant.
Skipping monitoring: The first you hear about an outage shouldn't be an angry customer tweet. UptimeRobot is free and sends SMS/WhatsApp alerts.
No database backups until after the first incident: Take this seriously from day one. Daily automated backups to a separate location cost under ₹200/month.
Single server with no failover: A VPS can fail. For paid products, the acceptable outage window is hours, not days. At ₹15,000+/month revenue, the economics justify a hot standby server.
Not using a CDN: Indian broadband is fast in Tier 1 cities but variable elsewhere. Cloudflare's free tier makes your static assets fast everywhere in India at zero cost.
Hosting cost benchmarks for Indian startups
| Stage | Monthly cost | What you get |
|---|---|---|
| Validation | ₹0–1,000 | PaaS free tiers, Singapore region |
| MVP (2 GB VPS) | ₹1,500–2,500 | Single server, Indian DC, 99.9% uptime |
| Growth (4 GB VPS + DB) | ₹3,000–6,000 | Separate DB, private networking, backups |
| Scale (Cloud) | ₹15,000–50,000 | Load balancing, CDN, managed services |
| Enterprise | ₹50,000+ | Multi-region, SLA, compliance |
Right-sizing your infrastructure to your current stage, not your projected stage, is how you preserve runway for the things that actually matter: product, users, and growth.