Shipcel vs Render
Render runs your code as long-running servers and containers, alongside managed Postgres and Key Value. That suits apps built around a server process. Shipcel deploys to Cloudflare Workers, which start in milliseconds per request instead of running a server, so nothing sleeps on the free plan and you pay for requests and CPU time rather than instance hours. Docker workloads can run as Cloudflare Containers on Workers Paid.
Which one fits
Choose Shipcel if
- You want a free tier that doesn’t sleep: Render’s free web services spin down after 15 minutes without traffic and take about a minute to start again.
- You want a free database that lasts: Render’s free Postgres is deleted 30 days after creation (after a 14-day grace period); D1 databases on Cloudflare’s free plan are permanent.
- You serve real traffic: Render includes 5 GB of bandwidth on Hobby and 25 GB on Pro, then charges $0.15 per GB; Cloudflare doesn’t meter static files.
- Your app can run as Workers (JavaScript, TypeScript or Python) on SQLite.
Choose Render if
- Your app is a long-running server, such as Rails, Django or a WebSocket server, that you don’t want to adapt to Workers.
- You need managed Postgres or Redis-compatible Key Value.
- You need persistent disks attached to a service; Cloudflare container disks are ephemeral.
- You want background workers and cron jobs as services in the same dashboard.
Side by side
Free plans
| Shipcel + Cloudflare free plans | Render Hobby (free) |
| Price | $0 | $0 |
| Compute | 100,000 Worker requests a day; no idle time | 750 instance hours a month; web services sleep after 15 minutes idle and take about a minute to wake |
| Database | D1: 5 GB in total, permanent | Postgres: 1 GB, deleted 30 days after creation, no backups |
| Bandwidth | No per-gigabyte charge; static files free and unlimited | 5 GB a month |
| Builds | 3,000 minutes a month | 500 minutes a month |
Paid plans
| Shipcel + Cloudflare Workers Paid | Render |
| Base price | $5 a month per account | Hobby workspace $0 or Pro $25 a month, plus each service |
| Web service | Included requests and CPU time; nothing runs while idle | From $7 a month (0.5c-512mb), always on |
| Database | D1: 5 GB included, then $0.75 per GB-month | Postgres from $6 a month plus $0.30 per GB of storage |
| Bandwidth | No per-gigabyte charge | $0.15 per GB beyond 5 GB (Hobby) or 25 GB (Pro) |
| Spending control | No hard cap from Cloudflare. Shipcel’s budget guard alerts over a budget ($0 by default) and can pause the app; Cloudflare’s budget alerts email you | A cap on build-minute spending and usage alerts |
What it costs
An always-on API with a 1 GB database
A small API that must answer immediately at any hour, with a 1 GB SQL database.
Monthly cost
| Setup | Per month | How it adds up |
| Heroku | $12 | Basic dyno $7 (Eco dynos sleep after 30 minutes without traffic). Postgres Essential-0 $5 (1 GB). |
| Render | $13.30 | Web service 0.5c-512mb $7 (free instances sleep after 15 minutes). Postgres $6 plus 1 GB of storage at $0.30. |
| Shipcel + Cloudflare | $5 | Workers Paid $5, because a 1 GB D1 database is over the free plan’s 500 MB per database. Workers start per request in milliseconds; nothing sleeps. |
Assumptions: Under 10 million requests a month. The API can run as a Worker (JavaScript, TypeScript or Python). A Docker image would run as a Cloudflare Container, billed by use on Workers Paid.
$5 a month instead of $12 to $13.30, with nothing that sleeps.
Billing and surprise-bill protection
- Without a payment method, Render spins services down for the rest of the month when bandwidth runs out; with one, overage is billed.
- Render’s only spending limit is a cap on build minutes; compute and bandwidth are billed as used, with email alerts.
- Cloudflare’s free plan is never billed for Workers, D1 or KV: over a daily limit, requests and queries fail until midnight UTC. R2 file storage bills usage beyond its free tier (never egress).
- Workers Paid ($5 a month per account) has no hard spending cap. Budget alerts email you when usage passes an amount ($10 by default) but don’t stop anything; per-Worker CPU and subrequest limits can stop runaway code. Shipcel’s budget guard alerts over each app’s budget ($0 by default) and can pause the app, minutes after the budget is crossed.
Moving from Render
- HTTP services written for Node.js often run as Workers with the
nodejs_compat flag; frameworks with a Cloudflare adapter import directly. - Docker services can run as Cloudflare Containers on Workers Paid, behind a Worker that routes requests to them.
- Postgres data needs converting to SQLite for D1, or keep Postgres and connect to it from Workers.