Is my project a static site or an app?

Ask one question: does something have to run on a server after the page is loaded? If the answer is no, it is a static site and belongs on the Website plan for € 10 a month. If there are logins, orders, a database, an API route or server components, it is an app and belongs on the App plan for € 15. The price difference is one container and one Postgres database.

SignStatic site (Website, € 10)App (App, € 15)
Build outputa folder with index.html, CSS, images, browser JavaScripta server that starts with npm start and listens on a port
Datanone, or in a service you already use (Supabase, Firebase, Airtable)your own Postgres database, included
Framework hintsplain HTML, Vite, Astro, Next.js with output: "export"Next.js with API routes or server components, Express, Nest, Remix
Formsour contact form module sends submissions to your inboxyour own code handles them
Deploypaste, upload, or one commanda GitHub workflow that builds the image
Files that give it awaynothing ends in .php, .py or reads process.enva server.js, an api/ folder, a Dockerfile

A quick test from the project folder. If this produces a folder you can open in the browser, you have a static site:

npm run build
npx github:dorelli-cloud/cli deploy dist --email [email protected]

Does the upload get refused with a message about server-side code? Then it is an app, and the route is Deploy an app with a database.

Common case: Lovable, v0 and Bolt often generate a front end plus Supabase. That front end is static; the database already lives at Supabase. Website plan, € 10. Only when the tool generated its own backend with its own tables do you need the App plan.

Not for

Static sites above 50 MB or 500 files, and sites with .php, .py or .env files in them; those are refused with an explanation. Apps in a language other than Node, and apps that need more than 1 GB of data or 10 database connections; those are questions for the Platform plan or another host.

Checked against the code on 2026-09-22 · Evidence: lib/trial-sites.ts, content/kb/deploy/limits.md, lib/config.ts, lib/bundelgrenzen.ts

Was this helpful?

/docs/questions/static-site-or-app.md