A platform for web agencies and studios: build and host your clients' sites.
One project per client, with its own database, brand kit and domain. Accounts, hosting in France and the cookie banner no longer get rebuilt for every quote, and at sign-off you open the Workshop to show the client what their form keeps.
Updated on
Demo: three fictional clients of the same agency, Maison Lebrun, Vert Pays and Vérandas Duval, one Kubbler project each.
The Maison Lebrun project
The page tree of the pâtisserie's home page: Home hero, Home stall for the cake display, Home faq. Every client has their own, in their own project.
Sign-off, on the page
The client reviews their home page on the canvas, from the €26 Paris-Brest to the "Dès après-demain, 7 h" pickup line. A sentence to rework gets fixed in front of them.
The Vert Pays quote tool, wired
At Vert Pays, the tarifFlow block and its one route, subscribeContract: one collection, contracts, and Kubbler's Payments brick at the end of the chain.
Vérandas Duval, live
The Angers manufacturer's site, in its own brand, with its autumn campaign up top: the third client, published apart from the other two.
Three clients of one agency, a demo built with Kubbler.
Studio Maillage, a fictional four-person agency in Rennes, has delivered three clients: a pâtisserie in Tours, a gardener near Dijon, a veranda maker from Angers. Each one has its own Kubbler project: its brand, its pages, its database.
Maison Lebrun: 18 pickups on Saturday 17 October, all paid online (€646)
Vert Pays: 15 maintenance contracts running, €2,870 a month in total
Vérandas Duval: 140 site visit requests since 21 September
The agency, its three clients and their data are invented; Lebrun and Vert Pays run card payments on Stripe's test mode, and Vérandas Duval takes nothing online.
The whole site, page by page
Each thumbnail is a complete page of the demo, as a visitor sees it. On a computer, hover one to scroll through it.
Three clients delivered, three projects that share nothing.
For each client, the site their own customers use, then the view you open in their Kubbler project during sign-off.
A cake to order in Tours
Paris-Brest for 6, 8 or 10, from €26 to €38, pickup from 7 am the day after tomorrow: Maison Lebrun's home page, under the striped awning of its brand.
You open the Lebrun project
The pâtisserie's project, open on its home page. The shop wants a sentence or a photo changed: you redo it on the page during the sign-off session.
The price of a garden near Dijon
For a garden in Talant, a 600 m² lawn and a 25 m hedge looked after twice a month, green waste included: Vert Pays shows €171 a month, with no prior visit.
You show where the sign-up goes
In Mechanisms, tarifFlow ends at subscribeContract: the server recomputes the price with the same rule and writes the contract to contracts; only the first month is charged, by card.
A veranda priced in Angers
The autumn offer (-10 % until 30 November 2026) and four models priced per m², installation included, from the bioclimatic pergola at €650 to the flat-roof extension at €2,100.
You filter the client's requests
In Vérandas Duval's database, the demandes collection keeps, for every visit requested, the model, surface, estimated range, department, sector, sales rep, budget and timing. The Lebrun and Vert Pays databases see none of it.
Screenshots: the Maison Lebrun, Vert Pays and Vérandas Duval sites, then their projects in the Workshop, each in its own database.
Monday morning, Vérandas Duval reads its 140 requests without calling the agency.
You delivered this screen with the site; since then, the client runs it alone. At the top, the autumn campaign total and the Maine-et-Loire share (50 requests, 36 %); below, the four sales reps' tabs. The API recomputes every figure from the client's database: no Monday summary left for you to prepare.
The campaign, up top
140 requests since launch, 6 signed orders, 27 m² average surface, 11 requests still without a rep.
Outside the four sectors
The list by department runs down to Vendée (2) and Deux-Sèvres (1): requests from further afield get filed too.
One tab per sales rep
Anjou for Julie Mercier, Pays nantais for Romain Gautier, Touraine for Élodie Fournier: the client's team splits the list without going through you.
What you no longer rebuild for each client, and what you keep doing for them.
From one client to the next, the technical set-up was the same, and it was the part nobody wanted to pay for. It now comes with the project.
Our part
What every client project gets when it is created, with no ticket to open and no server to configure.
Visitor accounts
Sign-up, sign-in, two-factor authentication, email verification and forgotten password: screens included, ready in every project that needs accounts.
One hosting per client
Each client's site runs in France, on OVHcloud servers, served over HTTPS with its own database, backed up without you having to think about it. Your tests happen in Dev, never on Prod.
Their domain and their cookie banner
The client's domain connected to their project, and a banner that refuses everything by default: no more cookie plugin to install and update site by site.
Your part
What your client pays you for, and what you rework without going through us.
Each client's brand kit
Colours, fonts, corner radius: one brand kit per client in your workspace library, or one of the five ready-made ones to start from. Each project keeps its own copy.
Your mockups, as pages
An HTML export, a .zip or a Figma file becomes editable sections; anything that could not be converted is flagged, and you pick it up in the editors.
Your templates
A delivered project can be saved as a template: the next client in the same trade starts from your structure and your blocks.
Monday morning, a client calls: their contact form has stopped sending.
A four-person agency ends up maintaining twenty sites, built years apart. Each one has its own hosting, its own form plugin, its own cookie banner, a certificate to renew and extensions to update. On Monday a client's form stops passing on requests; on Thursday another wants to know where their visitors' details are stored, and someone has to reopen a 2021 project to answer.
Every usual option has its price. A CMS and its plugins pool the work, but each site keeps its own updates to follow. A site builder is quick, then stalls as soon as you need real accounts or a real database. Custom development does everything, and turns each small site into a maintenance contract the client will not sign.
With Kubbler, each client becomes a project: their database, their brand kit, their domain. Accounts, hosting with OVHcloud in France, backups and the cookie banner come from a shared foundation that our team updates for every project at once. Your time goes back to design and content, and when a client asks what their form keeps, you open the Workshop together.
What it costs
One project and 500 sparks a month, the budget that pays for AI generations. Packs can be added if you need more.
With your own domain: €44 excl. VAT a month.
No commitment. The domain name itself is paid separately.
See all pricesWhat to have ready
The client's brief: their trade, their customers, what the site should bring them.
Their content: copy, photos, services and prices, in whatever state they sent it.
Their brand guidelines (logo, colours, fonts), and your mockups as HTML, a .zip or in Figma, if you have them.
The fields of their form: what they want to know from a customer before an appointment or a quote.
Their domain name, and access to its DNS zone for two records (TXT and CNAME).
Nothing else: no specification, no mock-up.
The questions we get asked.
Including the ones where the answer is "not yet".
Starter costs €29 excl. VAT per month and covers one project; Standard, at €65 excl. VAT per month, covers three; Team, at €249 excl. VAT per month, covers unlimited projects, with three seats. Each live site adds its own hosting, €15 excl. VAT a month on the client's domain, or €5 excl. VAT a month while it keeps a kubbler.app address. No commitment.
Not project by project. Access is granted per workspace (viewer, editor or administrator, with going live reserved for administrators), and an invited person sees every project in that workspace. For a client to see only theirs, give them a separate workspace: the Organization plan, on quote, includes five, with ten seats. Each invited person takes a seat and needs a Kubbler account.
Not yet. The delivered site carries your client's brand and domain, but Kubbler, the Workshop and the editors keep ours: a client you invite into their project will see Kubbler there.
Yes for the layout. An HTML export, a .zip up to 16 MB or a Figma file (in a project already created) becomes sections tied to the project's brand kit, and you get the list of what could not be converted. The behaviour, what a form does and what it saves, is described afterwards.
Each project's data belongs to your client, and a DPA (GDPR article 28) is available for their file. The code, no: the foundation stays ours, with no Git repository to take away, but the API description exports as OpenAPI.
Payments, yes: the Payment brick charges the end customer's card once, through Stripe, on your client's own Stripe account. On email, a slot booking gets its confirmation and every payment its receipt. No reminder the day before, no text messages, no campaigns.
Start from the brief of your next client.
In the Studio, you describe their trade, pick their brand kit or one from the library, then approve the plan before anything is built. Sign-off happens in the Workshop, and the site goes live on their domain.