If your team ships SvelteKit fixes during working hours while patients, tenants or buyers are halfway through a form, this is for you. The fix is one setting and one package version, and you can check both today.
What happens to a visitor when you deploy mid-session?
A deploy in working hours can cost you the bookings that were half typed at that minute. Here is how. A visitor opens your booking page at 10:58. At 11:00 your team ships a fix. The visitor's browser still runs the old version, and its next request now reaches a server that only has the new one. Vercel calls this version skew.
SvelteKit has its own answer, and it is a blunt one. Vercel's SvelteKit page says that when SvelteKit detects version skew, "it triggers a hard reload of a page to sync to the latest version. This does mean the client-side state gets lost." In plain terms: whatever the visitor typed and had not submitted is gone.
With Vercel Skew Protection switched on, "client requests get routed to their original deployment. No client-side state gets lost." The visitor finishes on the version they loaded. The next full page load gets the new one.

What does Skew Protection cover, and what does it miss?
It covers the requests the framework makes for you. It does not cover everything, and the gaps are where forms still break.

The fetch() gap is the one we look for first. Requests the framework makes for you are pinned. A form an agency wired to a hand-written fetch('/api/book') is not, unless the code adds the deployment ID; Vercel's docs show how, with a ?dpl= parameter or an x-deployment-id header. Ask your developer how each form submits, then test it with a deploy.
What should you ask your developer to set?
Three settings, all in one file, svelte.config.js. You do not need to read it; forward this list to whoever does.
- Pin the adapter. New projects use
adapter-auto, which installs the Vercel adapter at build time. Vercel recommends installing@sveltejs/adapter-vercelyourself "to ensure version stability". That is also how you guarantee 5.2.0 or later. - Set the runtime on purpose. You can set it for the whole project or per route, for example
nodejs24.xoredge. Put routes that read your database in the region nearest to it. Vercel has 19 compute regions and none in the UAE or Saudi Arabia; Mumbai (bom1) is the nearest. - Leave
splitalone. SvelteKit bundles routes into one function by default. Vercel says splitting "is not typically better" and suggests it only for size limits or long cold starts.
One detail that catches agencies: Vercel notes you cannot use TypeScript for the SvelteKit config file. It stays svelte.config.js.
What does it cost to run?
Skew Protection is a project setting on Pro and Enterprise, so the real cost question is the plan. As of 16 October 2026, Pro is USD 20 a month with one deploying seat and USD 20 of usage credit. Extra deploying seats are USD 20 a month each, viewer seats are free, and usage above the credit is metered. Hobby is for non-commercial, personal use only, and it has no Skew Protection.
In one line: USD 20 a month for each deploying seat, and well under a dollar of usage for the sample below, inside the included credit. Our arithmetic for the clinic example below, from list prices at Mumbai rates, not a measured bill. Assume 30,000 form requests a month, each 50 ms of Active CPU and 2 GB held for 200 ms. That is 0.42 CPU hours (USD 0.06), 3.3 GB-hours (USD 0.04) and USD 0.02 of invocations: about USD 0.12, inside the USD 20 credit. The plan fee and seats are the bill.
We are not a Vercel partner and earn nothing from your Vercel bill. Our own site runs on Netlify. What stays portable: the app is plain SvelteKit, and swapping adapter-vercel for another adapter moves it. What does not move: Skew Protection, which is Vercel's.
So a clinic or brokerage running on a free account has two problems: the plan does not allow commercial use, and deploys can wipe forms.
What does this look like for a clinic booking form?
Take a sample clinic in Dubai with a four-step SvelteKit booking form: doctor, time, insurance, contact details. This is an illustration, not a client story.
- 0110:58. A patient opens the form on a phone and picks a doctor and a time.
- 0211:00. Staff ship a fix that adds a new insurer to the insurance list.
- 0311:02. Without Skew Protection, the next step can trigger a hard reload, and the patient starts again or gives up.
- 0411:02. With Skew Protection on, the patient's requests stay on the 10:58 version and the booking goes through.
- 0511:05. The next patient who opens the page sees the new insurer.

The times are part of the example, not a measured result. If no-shows and double bookings are the bigger problem, a form fix will not cure them. See how we work with clinics, and Mindcat Bookings for staff calendars.
What goes on the security questionnaire?
Vercel splits the answers in its shared responsibility model, read on 16 October 2026. Here is who writes each line.
If a contract says data must be processed inside the UAE, Vercel cannot meet it today. Say so before you sign, not after.
For a bad month, set Spend Management. Vercel sends alerts at 50%, 75% and 100% of the amount you set, and pauses production when you reach it if Pause Production Deployments is on. A budget alone does not stop usage, and the check can lag by several minutes. If a change breaks the site, Instant Rollback on Pro returns production to any earlier production deployment from the dashboard; environment variable changes are not rolled back with it.
What do you check before you ship in working hours?
Run through these once. Each takes minutes.
- 01The team is on Pro or Enterprise, not Hobby.
- 02Skew Protection is on under Settings, Advanced, and production was redeployed after switching it on.
- 03@sveltejs/adapter-vercel is pinned in package.json at 5.2.0 or later.
- 04Any hand-written fetch() from the browser passes the deployment ID.
- 05The maximum age covers your longest session. One day is the default.
- 06One deploy tested with a half-filled form open on a phone.
If you deploy once a month, at night, and nobody is mid-form when you do, this is not your problem yet; spend the time elsewhere.
What happens on the first call?
We call the method Preview every change: each change gets its own preview link, someone on your side approves it on a phone, then it goes live, and any release can be rolled back. Send us the app and where it runs today. The written assessment is free and says what to change, what to keep and what it costs to run. The first build week is a fixed AED/SAR 14,900, and a Run plan keeps the app patched and shipping afterwards. More on how we build and run apps is on our Vercel page.

