Most Astro hosting guides say the same thing: connect your repo to Vercel or Netlify, push, done. That works for a static blog.

But Astro isn’t a static site generator anymore. SSR mode, API routes, server-side auth, database access - Astro handles real backend work now. The hosting landscape hasn’t caught up. Half these platforms either don’t support SSR properly, require vendor-specific adapters that limit what you can do, or charge you per function invocation for what should be a $3/mo Node.js process.

I’ve deployed Astro sites across all 7 of these platforms. We built instapods.com with Astro and went through this evaluation ourselves. Here’s what I found - the tradeoffs, not the marketing pages. (For a step-by-step guide, see our Astro deployment tutorial.)

Astro Hosting Comparison Table

PlatformBest ForSSR SupportStarting PriceDeploy Method
VercelVercel ecosystem usersVia adapter (serverless)Free / $20/mo proGit push
NetlifyJAMstack sitesVia adapter (serverless)Free / $19/mo proGit push
Cloudflare PagesFree static hostingVia Workers adapter (limited)Free / $5/mo paidGit push or CLI
RailwayDev-friendly SSRNative Node.js$5/mo hobby (usage-based)Git push
RenderStatic sites on budgetWeb service ($7/mo+)Free static / $7/mo SSRGit push
DigitalOcean App PlatformDO ecosystem usersVia App Platform$5/mo basicGit push
InstaPodsSSR + simplicityNative Node.js (no adapter)$3/mo flatCLI (instapods deploy)

1. Vercel - Best for the Vercel Ecosystem

Vercel is the default pick for anything JavaScript. Their Astro integration works, and the free tier is generous for static sites - 100GB bandwidth, automatic previews, edge caching.

Static deployment is great. Connect your repo, Vercel detects Astro, builds it, and you’re live. Hard to beat for zero-config static hosting.

SSR is where it gets complicated. You need the @astrojs/vercel adapter, which deploys your server routes as serverless functions. That means cold starts (200-500ms), function duration limits (10 seconds on free, 60 on pro), and no persistent connections. WebSockets, SSE, or long-running processes don’t work in serverless mode.

Pricing: Free tier covers most personal projects. Pro is $20/mo per member. Usage-based charges for bandwidth, function invocations, and build minutes add up fast - I’ve seen hobby projects hit $30-40/mo after a single traffic spike.

The lock-in question: The Vercel adapter ties your deployment to their platform. Moving later means rewriting your server configuration. Fine for static sites, but worth knowing before you commit to SSR on Vercel.

Best for: Teams already using Vercel for Next.js who want to add an Astro site to the same account.

2. Netlify - The JAMstack Pioneer

Netlify was doing static site hosting before it was cool. Their Astro integration is solid, and the developer experience is polished - deploy previews, form handling, identity, and serverless functions built in.

Static hosting works as expected. Free tier gives you 100GB bandwidth and 300 build minutes per month.

SSR runs on Netlify Functions (their serverless platform). You install @astrojs/netlify, and your server routes become Lambda-style functions. The cold start problem is real - I’ve measured 800ms-1.5s on first request after idle periods. Subsequent requests are fast, but that first hit is painful for SSR pages where users expect instant loads.

Pricing: Free tier is competitive. Pro is $19/mo per member. Like Vercel, watch the usage-based charges. Build minutes (300 free) run out fast if you’re deploying multiple times a day during active development.

Netlify-specific features like form handling and edge functions are nice, but they’re Netlify-only. Use them and you’re locked in deeper.

Best for: Content-heavy static sites where you want deploy previews and built-in form handling without a backend.

3. Cloudflare Pages - Best Free Static Astro Hosting

For pure static Astro sites, Cloudflare Pages is hard to beat. Unlimited bandwidth on the free tier. No cold starts. Global CDN. Genuinely $0/mo for static sites with real traffic.

Static deployment is excellent. npm run build, deploy the dist/ folder, done. Cloudflare’s global network means your site loads fast everywhere. No bandwidth caps on free - that’s a real advantage over Vercel’s and Netlify’s 100GB limits.

SSR uses Cloudflare Workers, and this is where you hit walls. The @astrojs/cloudflare adapter compiles your server code to run on Workers, which is a V8 isolate - not Node.js. That means no fs module, no node:path, no child_process, and limited node:crypto. If your SSR code or any dependency uses Node.js APIs, it won’t work without polyfills or rewrites.

Workers also have a 128MB memory limit and 30-second CPU time limit on the free plan. Database access requires Cloudflare D1 or external connections through their service bindings.

Pricing: Free tier is unmatched for static. Paid plan ($5/mo) adds more Workers requests and build concurrency.

Best for: Static Astro sites where you want zero hosting costs. Not recommended for SSR unless you’re comfortable working within Workers runtime limitations.

4. Railway - Dev-Friendly Astro SSR Hosting

Railway takes a different approach. Instead of serverless, you get a real runtime. Your Astro SSR app runs as a Node.js process in a managed environment.

SSR works natively. Use the standard @astrojs/node adapter, set your start command, and Railway runs it. No serverless limitations, no cold starts, no adapter lock-in. Your Astro app runs the same way it does on your local machine.

The pricing model is the catch. Railway’s hobby plan is $5/mo with $5 of usage credits included. But pricing is usage-based - you pay for CPU time, RAM, and egress. A quiet Astro SSR site might stay under $5/mo. A site with steady traffic could hit $15-20/mo. There’s no way to set a hard spending cap, so you won’t know your bill until it arrives.

No free tier anymore. They removed it in 2024. The trial gives you $5 of credits to test, then you’re on the hobby plan.

Developer experience is good. Clean dashboard, logs, environment variables, one-click database provisioning. If you need Postgres alongside your Astro app, Railway makes that simple.

Best for: SSR projects where you want a real runtime with a nice dashboard and don’t mind usage-based billing.

5. Render - Budget Astro Hosting Option

Render offers two paths for Astro: free static site hosting and paid web services for SSR.

Static hosting is free but comes with a big caveat - your site spins down after 15 minutes of inactivity. The first visitor after idle waits 30-50 seconds while the service cold-starts. For a personal blog that gets occasional traffic, this means your readers stare at a blank screen for nearly a minute. Not great.

SSR requires a web service starting at $7/mo. This gives you a persistent process - no cold starts. But build times on Render are noticeably slower than other platforms. A typical Astro build that takes 30 seconds locally can take 2-3 minutes on Render.

Pricing: Free static (with cold starts), $7/mo for the cheapest web service. Bandwidth is metered - 100GB free, then $0.10/GB. If your site serves a lot of images or assets, watch this.

Best for: Projects where you need free static hosting and can tolerate cold starts, or where $7/mo for a persistent SSR service fits your budget.

6. DigitalOcean App Platform - Astro on Enterprise Infrastructure

DigitalOcean’s App Platform is their PaaS offering. It works for Astro, but it was designed for bigger applications. The configuration is more complex than most Astro sites need.

Static sites deploy through their buildpack system. You configure a component in their app spec (YAML), set the build command, output directory, and environment variables. It works, but it’s more steps than Vercel’s “detect and deploy” approach.

SSR runs as a web service. The @astrojs/node adapter works here. Starting at $5/mo for the basic tier (512MB RAM, shared CPU). The interface is functional but not as polished as Railway or Vercel for simple web apps.

Where DO shines is if you’re already on DigitalOcean. You can add a managed database, connect to your existing Droplets, and keep everything in one account. The app spec YAML is powerful for complex setups but overkill for a single Astro site.

Pricing: $5/mo basic, $12/mo for the professional tier. Bandwidth included up to a point. No free tier for dynamic apps.

Best for: Teams already on DigitalOcean who want to keep their Astro app in the same ecosystem as their existing infrastructure.

7. InstaPods - Astro SSR Hosting Without the Complexity

Full disclosure - this is us. But I’m including InstaPods because it solves a problem the other platforms don’t: running Astro SSR on a real Linux server without any server management.

How it works: You get a pod - a real server with SSH access, not a serverless function. Your Astro app runs as a standard Node.js process. No special adapter, no runtime limitations, no cold starts.

Static deployment uses nginx under the hood. Build your site, deploy the output directory, and it’s served with proper caching headers and HTTPS.

SSR deployment uses the standard @astrojs/node adapter - the same one you’d use on any VPS. No vendor-specific adapter means zero lock-in. If you move to a different host later, your code works as-is. No rewriting.

Here’s the deploy workflow:

# Static
npm run build && cd dist && instapods deploy my-site --preset static

# SSR
npm run build && instapods deploy my-site --preset nodejs

That’s it. No Dockerfile, no nginx config, no CI pipeline to set up. The CLI uploads your files, configures the server, and gives you a live URL with HTTPS in about 2 seconds.

Pricing: $3/mo flat for the Launch plan. No usage-based charges, no bandwidth fees, no surprise bills. You know exactly what you’ll pay every month. We deploy instapods.com this way - the site you’re reading right now runs on a $3/mo pod.

What you also get: SSH access, persistent filesystem, git push deploys, and the ability to install system packages. Need SQLite for your Astro app? Use it - there’s a real filesystem. Need a cron job? Set one up over SSH. You can even deploy without a credit card to try it first.

Best for: Astro SSR projects where you want a real server without the DevOps. Also good for static sites where you want more control than Cloudflare Pages offers. See our Astro static deploy guide or Astro SSR deploy guide for setup details.

How to Pick the Right Astro Host

The right platform depends on what you’re building:

Pure static blog or docs site? Cloudflare Pages if you want $0/mo. InstaPods ($3/mo) if you want SSH access and a server you can customize. Both are solid options for static Astro sites.

SSR with API routes or server-side rendering? InstaPods or Railway. Both give you a real Node.js runtime without serverless limitations. InstaPods is cheaper ($3/mo flat vs. Railway’s unpredictable usage billing) and gives you SSH access. Railway has a nicer dashboard and one-click database provisioning.

Already on Vercel or Netlify? Stay there unless you’re hitting limits. If your static site works on the free tier, there’s no reason to switch. But if you’re adding SSR and running into cold starts, adapter limitations, or unexpected bills - that’s when it’s worth looking at alternatives.

Need SSH access, databases, or system-level control? InstaPods is the only option on this list that gives you a full Linux server. Install packages, run background processes, use SQLite, and SSH in to debug production issues.

Tired of surprise bills? InstaPods at $3/mo flat is the cheapest paid option. Cloudflare Pages is free for static. Avoid usage-based platforms (Railway, Vercel Pro) if unpredictable bills stress you out.

The key question: do you need serverless or a real server? For static Astro sites, serverless platforms work great. For SSR, a real server gives you fewer headaches. If you’re coming from a PaaS like Heroku, our Heroku alternatives comparison covers the broader hosting landscape beyond Astro-specific platforms.

Astro Hosting FAQ

Can I host an Astro SSR site for free?

Not with a good experience. Render’s free tier has 30-50 second cold starts that make SSR unusable. Cloudflare Workers has severe Node.js compatibility issues. Vercel and Netlify free tiers technically support SSR, but with tight function limits (10-second timeout on Vercel free). For SSR, plan on $3-7/mo minimum for something your users won’t hate.

Which Astro adapter should I use?

Use the platform-specific adapter for serverless hosts - @astrojs/vercel, @astrojs/netlify, or @astrojs/cloudflare. For anything that runs Node.js natively (InstaPods, Railway, a VPS, DigitalOcean), use @astrojs/node. The Node adapter is the most portable - it works on any platform that runs Node.js, so you’re never locked in.

Is Vercel the best hosting for Astro?

Vercel is one of the best options for static Astro sites, but not for SSR. For static, it offers a generous free tier, automatic deploys, and great performance. For SSR, it’s not ideal. The serverless model means cold starts, function duration limits, and no persistent connections. If your Astro project is purely static, Vercel is excellent. If you’re doing SSR, consider platforms that give you a real Node.js runtime instead.

How much does Astro hosting cost?

Astro hosting costs $0-5/mo for static sites and $3-20/mo for SSR, depending on the platform. Static hosting ranges from $0/mo (Cloudflare Pages, Netlify free tier) to $3-5/mo for paid options. SSR hosting ranges from $3/mo (InstaPods) to $20/mo (Vercel Pro). Usage-based platforms like Railway can cost $5-50/mo depending on traffic. For predictable billing, look for flat-rate plans.

Can I deploy Astro without Docker?

Yes, most Astro hosting platforms deploy without Docker. Vercel, Netlify, and Cloudflare Pages handle builds automatically from your repo. InstaPods deploys with a single CLI command - no Dockerfile needed. Railway detects your project type and builds accordingly. Docker is only necessary if you’re deploying to a raw VPS and want to manage everything yourself.


Ready to deploy your Astro site? Try InstaPods free - deploy without a credit card. Static or SSR, one command, $3/mo when you’re ready. No vendor adapters, no cold starts, no surprise bills.