Work
8 min read


In this piece
Webflow or custom code? Start with the cost of change
Teams often choose a website stack by looking at the first build.
Can Webflow create the design? Can a developer build it in a modern framework? Which option launches faster? Which feels more professional? Which costs less in the proposal?
These questions matter.
They concentrate attention on the shortest phase of the website’s life.
After launch, the company will change copy, add pages, publish content, update proof, run campaigns, connect tools, replace team members, meet new accessibility expectations, and respond to product or positioning changes. The platform will change as well. Pricing, limits, dependencies, frameworks, and supported features will not remain fixed.
The right stack is the one that makes the expected changes safe and proportionate for the people who must make them.
Use four variables:
Change frequency × Change owner × Failure cost × Integration depth
The decision is not really Webflow versus code.
It is which responsibilities the team wants to operate directly, which it wants a platform to standardise, and where the boundaries are likely to become expensive.
“Custom code” is not one option
Webflow is a product with identifiable capabilities and limits.
Custom code is a category containing many architectures.
A static site generated from files is custom code. So is a React or Next.js application connected to a headless CMS, search service, authentication provider, analytics system, and cloud platform. One can be extremely simple to operate. The other can require specialised engineering across several systems.
This matters because comparisons often place the most convenient version of one side against the most burdensome version of the other.
“Webflow includes hosting” is compared with “custom code requires managing servers.” Yet managed deployment platforms can provide Git-based builds, previews, logs, domains, and production environments for code-led projects. Vercel’s deployment overview
Conversely, “custom code gives complete control” is compared with Webflow’s visible limits. But control means somebody must make and maintain the choices. Official Next.js guidance for self-hosting, for example, discusses reverse proxies, caching, multi-instance coordination, security-related configuration, build consistency, and CDN behaviour. Next.js self-hosting guide
Neither model is inherently simple.
Specify the actual architecture, hosting model, CMS, team, and operating process on both sides before comparing them.
Change frequency: what will move after launch?
List expected changes by cadence.
Frequent
Articles, resources, case studies, campaign pages, team profiles, event information, product descriptions, testimonials, or localisation updates.
Occasional
Navigation changes, new service pages, component variants, new forms, design-system updates, analytics changes, or integrations.
Rare but consequential
Repositioning, a new information architecture, migration, authentication, commerce, major product logic, or infrastructure change.
Webflow is often strong when frequent change consists of visually managed pages and structured website content. Its Designer, components, CMS, hosting, and roles allow marketing and design teams to work close to the published result.
A code-led stack can be stronger when frequent change involves application behaviour, shared product code, complex data, automated tests, or integrations that already live in an engineering workflow.
The word “frequent” matters more than “possible.”
Both stacks can be extended. The question is whether the ordinary change follows the grain of the system or repeatedly requires an exception.
If every campaign page needs custom code inside Webflow, the nominally visual workflow is not carrying the real work. If every copy correction in a custom site requires an engineer and deployment, the architecture has placed routine content behind an expensive owner.
Choose for the changes you expect to repeat.
Change owner: who should be able to act?
A feature is not operationally available merely because the stack supports it.
It is available when the responsible person has the access, skill, confidence, and process to use it.
Ask who will own:
routine copy and image updates;
structured publishing;
page composition;
visual-system changes;
custom interactions;
integrations and forms;
analytics and consent;
deployment and rollback;
security updates;
incidents.
Webflow can place content and approved page composition closer to marketing and design teams. Current Site plans are separate from Workspace access, and organisations still need to understand which plan, seats, and roles support the chosen operating model. Webflow’s Site plan guide
A code-led site can give engineers familiar version control, automated testing, review, and deployment practices. A headless CMS can let editors manage content without editing code. This division may suit an organisation that already has product engineering and content operations.
Do not choose a stack around an imagined future team.
A founder may say the company will hire developers later. A marketing team may say it wants complete design control without having someone responsible for the design system. Architecture should serve the people who will actually operate it, with a realistic path for growth.
Failure cost: what happens when a change goes wrong?
Not all website failures are equal.
A misplaced image is different from a lost lead. A broken article layout is different from an incorrect legal claim. A delayed campaign page is different from exposed personal data. A stale case study is different from an unavailable customer portal.
Higher failure cost increases the value of review, isolation, testing, permissions, observability, and reliable rollback.
Code-led workflows can make changes explicit through version history, pull requests, tests, preview deployments, and controlled releases. These capabilities do not appear automatically; the team must establish and maintain them.
Visual platforms can provide previews, roles, backups, managed infrastructure, and constrained components. They can also allow a person with broad access to change a global component or publish an error quickly.
The tool does not determine governance. It shapes which governance is easy.
For each consequential change, ask:
Can it be reviewed before publication?
Can its effects be limited to one page or environment?
Can it be reversed quickly?
Will the team know it failed?
Does the person with access understand the consequence?
A low-risk marketing site may rationally prioritise direct editing speed. A site handling sensitive transactions may rationally accept slower change for stronger controls.
Integration depth: is this a website connected to products, or part of the product?
The boundary between marketing site and web application is not always clean.
A site may need forms, CRM routing, gated content, account data, personalisation, search, calculators, product dashboards, payments, or real-time inventory. Each integration adds state and failure modes.
Webflow supports custom code, applications, APIs, and external integrations, but every extension has boundaries. Its custom-code documentation says scripts are outside Webflow’s control and can create compatibility, security, support, or compliance responsibilities. Its Data API enforces plan-based request limits and specific publishing limits. Webflow custom-code guidance, Webflow API rate limits
Custom code offers greater freedom to design the integration around the product’s architecture. That freedom brings responsibility for implementation, deployment, security, monitoring, and maintenance.
A practical boundary is to ask where the source of truth lives.
If the website mainly presents Webflow-managed content and sends data to other systems, Webflow may remain a coherent centre. If the experience must deeply reflect application data, authenticated state, shared product components, and complex business logic, forcing everything through a visual website platform may create more bridging work than it removes.
Integration capability is not the same as integration fit.
Portability is about the whole system
Custom code is often chosen to avoid lock-in. Webflow is sometimes chosen because its front-end code can be exported.
Neither statement is sufficient.
Webflow’s export guide says CMS functionality and content, ecommerce, user accounts, localisation, form processing, search, and password protection are not included as functioning parts of the exported site. Webflow’s code-export guide
A code-led stack also contains dependencies: framework conventions, CMS schemas, hosting services, packages, APIs, and the knowledge of the team that built it.
Portability should be assessed layer by layer:
Can content and assets be exported in a usable form?
Is the front end separable from the CMS?
Which behaviour depends on proprietary services?
Can another team understand the code or visual system?
Who owns domains, accounts, repositories, and data?
What would a migration preserve, rebuild, or lose?
The most painful lock-in is sometimes not technical. It is operational dependence on one person who understands an undocumented system.
The objection: just choose the faster option
Speed can be the correct priority.
A campaign tied to a date, a new company needing market presence, or a focused validation page may gain more from launching quickly than from optimising for every future scenario.
The error is treating speed as a property of the tool alone.
Webflow may be faster for a designer experienced in Webflow and slower for a team that already has coded components, deployment, and a headless CMS. Custom code may be fast for a narrow static site and slow when the project needs a new editing system. Team familiarity changes the calculation.
Speed also has phases:
speed to first version;
speed to approval;
speed to publish content;
speed to make a structural change;
speed to diagnose a failure;
speed to move platforms.
Choose which speed the business needs.
Make a cost-of-change table
Before selecting the stack, list the ten most likely changes over the next two years.
For each, record:
Frequency: How often will this happen?
Owner: Who should be able to do it?
Failure cost: What happens if it is wrong or delayed?
Integration depth: Which data, system, or behaviour does it touch?
Webflow path: Is the change native, constrained, or dependent on custom extension?
Code path: Which people, tools, review, deployment, and maintenance does it require?
Then add the costs that do not fit neatly in a build estimate: plans and seats, specialist availability, governance, support, migration, and the cost of waiting for the wrong owner.
The answer may still be Webflow. For many marketing and content-led sites, the combination of visual control, CMS, hosting, and client operation is strong.
The answer may be custom code. For deeply integrated, application-like, or engineering-owned experiences, direct architectural control can justify the operating responsibility.
The mature decision is not a declaration that one approach is more serious.
It is an honest choice about the changes the organisation expects, the people who will make them, and the complexity it is prepared to own.