Static vs dynamic websites, explained for the person paying
If your site has no customer login, no dashboard and no checkout, it should be static. That covers the ordinary business website, a handful of service pages with a form and a blog, and it barely moves the price: four to seven pages with a CMS is step 03, EUR 1.500-3.500, whether those pages are built in advance or assembled on every visit.
Dynamic sounds modern and static sounds like a printed brochure, so it is tempting to ask for the heavier thing out of caution. That is the wrong way round.
What the two words mean
A static site is built before anyone visits. Every page exists as a finished file, and when a visitor asks for your pricing page the server hands that file over. Nothing is assembled and nothing is queried.
A dynamic site builds the page while the visitor waits. The request arrives, code runs, a database is queried, the HTML is put together, and only then does the page come back. That is right when the page cannot be known in advance because it depends on who is asking.
Static does not mean you cannot edit it
This is the misunderstanding that makes people buy the wrong thing. A static site can have a CMS. You log in, change the price on a service page, press publish, and the pages containing that price are rebuilt and replaced. From where you sit it is the same as any other editor. The difference is that the work happens once, when you publish, instead of on every visit by every stranger.
What a static site can still do
All of the following is normal static work: a contact form that lands in your inbox, analytics, a blog with categories, a CMS your team edits, a booking flow through a scheduler, search across your own pages, more than one language, downloadable files, video and a newsletter signup. None of it requires the page to be assembled per visitor.
What actually forces dynamic
Five things do, and they are all versions of the same thing. The page depends on who is looking, or on something that changed a second ago.
- Accounts and login, where a visitor becomes a specific person.
- Content that differs per person: a dashboard, an order history, a client area.
- Payments and checkout on your own terms, with what happens after the payment under your control.
- Data that moves while somebody is reading it: live availability, stock, a queue position.
- Anything the page writes back into your own database, a chatbot that remembers included.
That is step 04, advanced site or web app, EUR 3.500-7.500, over 6 to 12 weeks. If it grows into a product of its own, with accounts, billing, an admin and its own deployment, it is step 05, from EUR 7.500, scoped in discovery.
Which one your site is
| What the site has to do | Static or dynamic | Step and price |
|---|---|---|
| One page, a form, analytics | Static | Step 01, EUR 600-900, 1-2 weeks |
| Two or three pages, a contact flow, basic CMS | Static | Step 02, EUR 900-1.500, 2-3 weeks |
| Four to seven pages, service pages, CMS, booking or contact | Static | Step 03, EUR 1.500-3.500, 3-6 weeks |
| Login, dashboard, API, CRM, payments, chatbot | Dynamic | Step 04, EUR 3.500-7.500, 6-12 weeks |
| Your own product with accounts, billing and an admin | Dynamic | Step 05, from EUR 7.500, after discovery |
The ladder in full is on packages. The first three rows give the same answer, which is the point of this page: what you ask the site to do decides the price, and that same answer settles static or dynamic on its own.
What static is actually buying you
Fewer things that can fail. A file cannot run a slow query, run out of database connections, or fall over because a background process died on a Sunday. Speed comes from the shape rather than from tuning: the server hands over a finished file, so nothing in the page is waiting on a query that has to run first.
Less to attack. There is no database behind a page that has no database behind it, so there is nothing on the public pages to inject into and no login screen on them to guess at. Hosting is something we can do, agreed per project. The code, the repository and the database belong to the client in every case.
Static and dynamic on the same site
The real answer is not one or the other per site. It is one or the other per page. A modern framework builds your service pages and your blog in advance and leaves a single route dynamic for the one thing that needs it, so the customer area is the only part with a database behind it. That is the shape we reach for, and it is how our Next.js work in Amsterdam is put together.
How the build runs and how long it takes
Scoping first, then a fixed quote, always in that order. Step 01 runs 1 to 2 weeks, step 02 runs 2 to 3, step 03 runs 3 to 6, step 04 runs 6 to 12. The static or dynamic call is made during scoping, and it follows from what the site has to do rather than from taste.
Inside those weeks, the design and the build are ours to move. Content is the part that waits on you. If the words and the photographs exist before the build starts, the short end of a range is realistic; if they do not, the site sits finished and empty while they are written.
When to spend less
If your current site works and people find it, static versus dynamic is not a reason to rebuild anything. If what you need is one page of information, that is step 01, EUR 600-900, and it should not grow into three pages because three sounds more serious. If the site is fine and nobody finds it, the build is not the problem: SEO foundation is a one-off of EUR 450-750, covering Search Console and analytics, indexation, technical hygiene, titles and internal links. If one of those three describes you, do not buy a bigger build yet.
Do not buy dynamic in case you need accounts one day either. Adding a login later is ordinary work, priced as the dashboard or client login add-on at EUR 1.500-4.000 when it actually arrives. Paying for a database now, for a feature you have not designed, is buying a maintenance job and calling it future-proofing.
Common questions
I was told static sites are bad for SEO.
It is the other way round in the one sense that matters. A search engine asks for a URL and reads the HTML that comes back. A static page hands over finished HTML immediately, while a dynamic page has to be built first, and anything slow or broken in that chain is what gets read instead. Nothing about being static limits your titles, your structure, your internal links or your content.
Is WordPress dynamic?
By default, yes. A page view runs code and queries a database, which is where the patching and the plugin updates come from. You can put a caching layer in front of it, which is a way of making it behave statically without being static, and that is a sensible thing to do with a site that already exists.
Can we start static and add a login later?
Yes, and it is the sensible order. The login bolts on as an add-on when it arrives, EUR 1.500-4.000 with the quote confirming the scope, and the pages you already have keep working as they are. Because the client owns the code and the repository, that later work is not locked to us.
Does static mean I cannot have a blog?
No. A blog is pages made of text, and pages made of text are the thing static is best at. Write the post, press publish, the site rebuilds, it is live. The same is true of a CMS, from step 02 upward.
If you are not sure which side your site falls on, describe what it has to do and we will tell you which step that is, then quote it.
Building something?
JP Studio designs and builds websites, storefronts and product interfaces.