Loading...

Vercel Alternative

A Vercel alternative for full-stack Next.js apps

Vercel runs your front end on serverless functions and bills each resource on its own meter. We run your Next.js or Node.js app as a container, with its database, storage, WAF and CDN on one monthly plan. Here is how the two models are priced, what you get on our side, and how a move works.

Every plan comes with a risk-free trial. Cancel anytime with one click — we refund you the same day and you keep using your trial.

A Vercel alternative for full-stack Next.js apps
GitPush to deploy
Postgres · RedisManaged add-ons
WAFOn every plan
$9From, per month

How Vercel bills

Vercel's prices below are as published on Vercel's pricing page on 14 October 2026; check there for the current figures.

The Hobby plan is free and limited to personal, non-commercial use. Pro is $20 a month and includes $20 of usage credit; each additional developer seat is another $20 a month. On top of the plan, usage is metered resource by resource: 1 TB of data transfer is included, then from $0.15 per GB; 10 million CDN requests, then from $2 per million. Functions are billed by Active CPU (4 hours included, then from $0.128 per hour), provisioned memory (360 GB-hours included, then from $0.0106 per GB-hour) and invocations (1 million included, then from $0.60 per million). Image optimization starts at $0.05 per 1,000 transformations.

None of this is unreasonable, but it means the bill is a sum of several meters, and most of them move with your traffic and with how long your functions run. A traffic spike or a slow API route shows up on the invoice in more than one line.

How our side is priced

We sell three plans: Small at $9, Medium at $19 and Large at $49 a month. Each one gives you a single monthly pool — 200 GB, 400 GB or 1,000 GB — that both your CDN traffic and the month's peak object storage draw from.

Your app runs as a container that is always on. A request is not a billable function call, and there is no per-CPU-hour meter behind each one: the app has the CPU and memory you give it, and if it needs more you add a fixed upgrade from the panel instead of watching a usage graph. The database, cache, object storage, WAF and CDN sit on the same account and the same bill.

Plans are billed in US dollars or in Turkish lira, whichever suits your company.

Next.js runs as a regular Node.js server

Nothing here is specific to Vercel's runtime, so there is nothing to be compatible with. Build Next.js with output: 'standalone', and the result is a small Node.js server that a short Dockerfile packages into a container. Server-side rendering, API routes, middleware and server actions all run inside that server, exactly as they do when you run next start on your own machine.

Because the process stays up between requests, it keeps its database connection pool and in-memory caches warm. The same goes for anything else you run next to it: an Express or NestJS API, a worker, a queue consumer.

Deploy from Git, roll back in one step

Install our GitHub App, pick the repository and branch, and every push builds a new image and deploys it. GitLab and other Git hosts over HTTPS work too, with an access token and a signed webhook. The build is defined by your Dockerfile, referenced from a docker-compose file, so several services in one repository — a web app, an API, a worker — deploy together. Builds run in an isolated sandbox with layer caching, and a build that fails never replaces the version that is running. No Git at all? cdnctl deploy uploads the project folder, builds it and gives you an HTTPS address.

Every deploy is kept as a revision, and rolling back is one action from the panel, the CLI or the API. Apps without a disk of their own roll out without downtime: the new container takes traffic once it answers, then the old one stops.

For changes you want to see before your users do, create a staging copy of the app with its own address, test it there, promote it to production, and roll the promotion back if you change your mind.

Database, cache, storage and cron in the same panel

Most Next.js apps need more than the front end. Here you enable managed Postgres, MySQL or Redis as add-ons, and their connection details are injected into the app as environment variables — no second vendor, no copying credentials by hand. S3-compatible object storage holds uploads and static files, and an app can mount a persistent volume when it needs a disk.

Environment variables and encrypted secrets are set per app. Scheduled jobs call a path on your app on a cron schedule, and a background worker is simply a container app without an HTTP port.

The Node.js hosting page goes through the platform in more detail.

Security and control at the edge

Your app's domains sit behind the same edge network that serves our CDN customers. A web application firewall (ModSecurity with the OWASP Core Rule Set) is included on every plan, and when it blocks a legitimate request you exempt that one rule on that path yourself, from the panel. Rate limiting, JavaScript-challenge bot protection and country, ASN or IP blocking are there too, along with custom response headers.

Custom domains get certificates automatically, and every app also gets a free address under cdn.com.tr while you test. Cache purges by URL, by prefix or for everything are one call to the REST API or cdnctl purge, so a deploy pipeline can clear what it changed.

Team members get owner, editor or viewer access, and deploys can use their own deploy-only API tokens in CI.

Moving a Next.js app from Vercel

1. In next.config.js, set output: 'standalone'. Add a Dockerfile that installs dependencies, runs next build and starts node server.js, and a short docker-compose file that points at it. See Deploy a Next.js app and Deploy with Docker Compose for examples.

2. Create your account, connect the GitHub repository and choose the branch. The first push builds and deploys the app.

3. Add your environment variables and secrets in the panel. If the app uses Postgres, MySQL or Redis, enable the same engine here as an add-on and move the data across.

4. Test on the app's free cdn.com.tr address. When it looks right, add your domain and point it at us with a CNAME record; the certificate is issued automatically.

Vercel alternative FAQ

Can Next.js server-side rendering and API routes run here?

Yes. With output: 'standalone', Next.js builds into a Node.js server, and that server runs as a container app. Server-side rendering, API routes, middleware and server actions run inside it, the same way they do with next start.

Do I pay per request or per function call?

No. You pay a monthly plan with one pool for CDN traffic and object storage. The app runs as an always-on container with the CPU and memory you choose; requests to it are not metered as function calls or CPU time.

Which Git providers can I deploy from?

GitHub through our GitHub App, with an automatic deploy on every push to the branch you choose. GitLab and other Git hosts over HTTPS work with an access token and a signed webhook. Without Git, cdnctl deploy uploads and builds your project folder.

Can I roll back a bad deploy?

Yes. Every deploy is kept as a revision, and you can roll back to an earlier one from the panel, the CLI or the API. With a staging copy you can also test a version first, promote it, and roll the promotion back.

Is there an API and a CLI?

Yes. Deploys, rollbacks, scaling, logs, environment variables, add-ons and cache purges are available through the REST API and the cdnctl command-line tool; CI pipelines can use deploy-only tokens, and an MCP server lets AI agents work with your account.

Run your Next.js app with its database and CDN