Static vs dynamic websites, explained for the person paying
For public content that does not depend on the current visitor, static generation is often a useful starting point. 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.
Features that need live data or server-side services
The five features below need an appropriate backend or external service. They do not necessarily require the page’s HTML to be built on every visit: a static shell can fetch data through APIs after loading. Private data and writes still need server-side authentication and authorisation.
- 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 | Typical implementation | 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 | Protected backend services; page rendering varies | Step 04, EUR 3.500-7.500, 6-12 weeks |
| Your own product with accounts, billing and an admin | Protected backend services; page rendering varies | 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 the site does sets our scope and price. Rendering is a separate implementation decision; static pages can use APIs, and a site can combine several approaches.
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.
Serving static HTML can reduce request-time server work, but it does not make the site immune to attack. Forms, scripts, dependencies, APIs and account access still need protection. Choose hosting and responsibilities during scoping, and keep the agreed code, repository and database ownership in the handover.
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, while CMS content and forms can also use databases or APIs. The implementation determines which requests need live services. 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.
Static and server-rendered pages can both be indexable. Check the actual response, rendered content, internal links, metadata and crawl access. Rendering mode by itself does not guarantee a ranking or establish that one page is faster than another.
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.
Discuss your project