To switch web developers without losing your site, take control before you change anything. List every account and DNS record the site depends on, get the domain and those accounts into your business's name, back up the site and its form data, and only then move the website, one piece at a time, while leaving your email records alone. Most takeovers that go wrong skip the first two steps.

This is the checklist we use when we take over a site. It's how we handled Elume Medspa in Fairfax, Virginia, where we replaced the previous agency as web vendor on September 20, 2026, including the problems that turned up after everyone thought the handover was complete.

Key takeaways
  • Inventory first: registrar, DNS host, web host, email records, booking, forms, analytics, ad accounts, Search Console and Google Business Profile.
  • Get ownership into the business's name before launch day. You don't have to change registrars to own your domain.
  • Back up the site files, the database, form entries and the full DNS zone, and store the backups off the server.
  • Keep your URLs. Anything that has to change gets a single 301 redirect to its new equivalent.
  • On launch day, change only the website DNS records. Leave MX, SPF, DKIM and DMARC alone.
  • Verify on the live site afterward, then remove the old developer's access everywhere.

Step 1: Inventory everything before anyone touches anything

Your website is several services from different companies sharing one domain name: registrar, DNS host, web host, email and booking can all be different companies. A developer who only knows about the website can break the other four in one click. Before we take over or rebuild any site, we fill in a "current setup" table like this one. Most of it can be checked from outside, without logging in.

PieceHow to find itWhy it matters
Domain registrarLook up your domain at ICANN Lookup and read the registrar and expiry dateWhoever controls this account controls everything else
DNS hostnslookup -type=NS yourdomain.com 8.8.8.8This is where you'll change records on launch day. It's often not the registrar
Web host and platformnslookup yourdomain.com 8.8.8.8 for the IP; the page source shows WordPress, Squarespace, Wix and so onTells you what can be exported and what has to be rebuilt
Emailnslookup -type=MX and -type=TXT for SPF, plus your DMARC record at _dmarc.yourdomain.comThe records you must never break
Booking and paymentsClick every Book and Buy button and note where it landsUsually a separate subscription that survives a rebuild if you keep the links
FormsSubmit each form and see which inbox gets itForms often email the developer, or store years of leads in the site database
Analytics and pixelsSearch the page source for G-, AW-, GTM- and fbqEvery tag has to come across, or your ads lose their conversion data
Ad accountsGoogle Ads and Meta: check who is listed as admin or ownerBilling and history live here
Search ConsoleSettings, then Users and permissionsNeeded to watch the switch in Google
Google Business ProfileBusiness Profile settings, then People and accessYour map listing, reviews and website link

When we build these tables, the same surprises keep coming up. The registrar of record is a company the owner has never heard of, because the domain was bought through the website builder. DNS lives somewhere other than the registrar. The only analytics tag is Universal Analytics, which Google stopped processing in 2023. And the main Book button points at a 404.

From our work: In work we did for Elume Medspa, the inventory turned up things nobody had listed. A forgotten Vagaro storefront was still live with 60 services publicly bookable at old prices, including Morpheus8 at $100 against a real price of $549. There were four Meta ad accounts across two Business Managers, with a legacy video ad still active, and a paused 2022 Google Ads account still linked to the Shopify store. None of it was visible from the website.

Step 2: Get ownership into the business's name

Do this while the relationship is still friendly, and before launch day. Ask for everything on one written list.

The domain

Two things decide who controls a domain: the registrant on record (the legal holder) and the account it sits in. Both should be your business, with renewal on your card.

You usually don't need to move to a new registrar. If the domain sits in your developer's account, the fastest fix is an account-to-account move at the same registrar. At GoDaddy, for example, the developer starts a transfer to another GoDaddy account, and you have 10 days to accept it. The DNS settings come with the domain, but connected products like hosting or email don't, so check those separately.

If you do move registrars, that's an inter-registrar transfer under ICANN's Transfer Policy. As of October 2026, these are the rules in force, per ICANN's FAQ for domain holders:

  • The registrar lock must be off, and you need the domain's authorization code (also called an auth code or EPP code). Your registrar must give you the code within five calendar days of your request.
  • A domain can't move registrars within 60 days of being registered, or within 60 days of its last transfer.
  • Changing the registrant's name, organization or email triggers a 60-day transfer lock. Some registrars let you opt out before you make the change.

ICANN's policy council approved recommendations in 2025 to shorten some of these locks to 30 days and drop the change-of-registrant lock. They weren't in force when we checked, and your registrar applies whatever is in force on the day you act, so ask them.

The practical order: get the domain into your account first, confirm auto-renew and the expiry date, and only change registrar later if you have a reason to. A lapsed domain is the worst outcome of a messy handover. In a hand-checked list of 100 med spa websites from our scans, 5 had lapsed domains and 3 had been hijacked by gambling or spam redirects. One of the lapsed ones belonged to a business with more than 200 Google reviews.

Everything else

  • Hosting. Ideally the account is in your name and the developer is a user on it. If they host you on their own server, you'll take a full export instead (step 3).
  • Google Business Profile. You should be the primary owner. Google makes a new owner wait 7 days before they can transfer primary ownership or remove other owners, so start this early.
  • Search Console. Add yourself as an owner. When you later remove the old developer, also delete their verification token (an HTML file, meta tag or DNS record). Google's permissions help warns that a removed owner can re-verify if the token is still there.
  • Google Analytics and Google Ads. Your own login should have Administrator or Admin access.
  • Meta. Meta doesn't let you move an ad account from one business portfolio to another. If your ad account lives in the agency's portfolio, the long-term fix is a new ad account in yours, with the agency added as a partner.
  • Email admin. The Microsoft 365 or Google Workspace admin should be an owner, not the developer.

Watch out: Don't remove the old developer from anything until you've logged in yourself and confirmed your access works. If the only working admin login disappears, getting a registrar account back means a slow identity-verification process.

Step 3: Back up what you can't recreate

What you can take depends on the platform:

  • WordPress and other self-hosted sites: a full copy of the files and a database export. That's a complete, restorable site.
  • Hosted builders: they don't hand you a portable copy. Wix, for example, says plainly that a Wix site can't be hosted elsewhere. If you're staying on the builder, ask the developer to transfer the site into your own account. If you're leaving, save every page's text and every original image yourself.
  • Form entries: export them. A contact or booking form that's been running for years is a lead list. At Elume, the site's booking request form held 1,897 entries from 1,331 people going back to 2018, and those leads had never been emailed until the move to a new email platform.
  • The DNS zone: export or screenshot every record at the DNS host. This is the one people skip, and it's the one that saves your email in step 5.
  • The URL list: download the sitemap and export your top pages from Search Console.

Store backups somewhere the business owns, not on the web server. A database export holds password hashes and customer records, and a copy left in a public folder is a liability.

Step 4: Keep your old URLs

Google ranks pages, not websites. If /botox/ ranks today and the new site moves it to /treatments/botox/ with no redirect, that ranking is gone. Keep every URL you can. Where one must change, 301-redirect it in one hop to the matching new page, not the homepage.

Build the list from the sitemap, the Pages report in Search Console and your analytics landing pages. Then add URLs that live outside the site: your Google Business Profile, printed cards, old emails and ads.

From our work: When we moved Elume's Shopify store to a new address, all 243 sitemap URLs returned HTTP 200 afterward, every old URL we sampled redirected in a single hop, and 242 of 243 were indexed within four days. When Elume's main site got a new theme on October 2, 2026, a 135-URL before-and-after comparison found titles, meta descriptions, canonicals, robots tags, H1s and structured data identical. It also caught one lost external link, which we restored before anyone noticed.

If the switch includes a domain change, keep the old domain registered forever. Weeks after the Elume store move, 70 of its 71 referring domains still linked to the old address. Those links only count as long as the old domain keeps redirecting.

Step 5: Change DNS without email downtime

Launching a new site usually means changing two DNS records: the A record for the root domain (@) and the CNAME for www. That's it. Everything else in the zone belongs to other services and stays exactly as it is:

  • MX records route your incoming email. For Google Workspace the value is now smtp.google.com, though Google says the older aspmx values still work.
  • SPF (a TXT record), DKIM (at selector._domainkey) and DMARC (at _dmarc) authenticate your outgoing mail.
  • Verification TXT records for Google, Microsoft, Meta and others.

The nameserver trap

The most common way a website switch breaks email is a nameserver change. Point your nameservers at a new DNS host and the new zone replaces the old one entirely. Any MX, SPF or DKIM record that wasn't copied across first stops existing, and mail bounces. If you must change DNS hosts, recreate every record from your step 3 export first, compare them line by line, then switch. Otherwise, leave DNS where it is.

Tip: A day before launch, lower the TTL on the A and www records to 300 seconds (five minutes). The switch then takes effect quickly, and so does a rollback if you need one.

If the new setup adds an email tool, put it on a subdomain so the root SPF record stays untouched. When we moved Elume's marketing email to Klaviyo, we put the sending domain on send.elumemedspa.com and added a DMARC record, because there wasn't one. The first live send passed SPF, DKIM and DMARC and landed in the inbox.

Step 6: Verify after the switch, then close the doors

Check the live site the way a customer sees it, not the developer's preview. Within the first day:

  1. Load the root domain and www over https and confirm the certificate is valid on both.
  2. Crawl the URL list from step 4. Every page should return 200, and every old URL should redirect once.
  3. Submit every form and confirm the message reaches the right inbox.
  4. Click every Book and Buy button and confirm it opens the right service.
  5. Send an email to your business address from an outside Gmail account and reply to it. Check the headers for spf=pass and dkim=pass.
  6. Open your analytics real-time report and confirm visits and conversions are recorded.
  7. Check that the new site isn't set to noindex, then submit the sitemap in Search Console.

Then remove old access everywhere (site admins, hosting, DNS, Search Console tokens, analytics, ads, Business Profile) and change shared passwords. Cancel old hosting only after a couple of weeks of clean checks.

From our work: On the day we took over Elume's website, we were told the old handover was complete. A check found an admin account from the previous vendor still active, and a 29 MB full database export sitting in a public folder of the site, holding password hashes and booking records. Leftovers like these are common after any long engagement. Both were found because we checked instead of assuming.

Printable website takeover checklist

Print this and tick it off in order.

#TaskDone when
1Look up the registrar, expiry date and nameserversWritten in your inventory table
2Record web host, platform, MX, SPF, DKIM and DMARCEvery record listed with its value
3List booking, payment, form, analytics and pixel IDsEvery button and tag accounted for
4Ask the old developer for access and exports, in writingOne list, one date
5Move the domain into the business's accountYou can log in, auto-renew is on your card
6Confirm registrant details are the businessLookup or registrar panel shows your business
7Become primary owner of Google Business ProfileYour login shows "Primary owner"
8Owner in Search Console; admin in GA4 and Google AdsYour own login works in each
9Meta ad account and Page in your business portfolioAgency listed as a partner, not owner
10Back up site files and database, or save all contentCopy stored off the server
11Export form entriesSpreadsheet saved
12Export the full DNS zoneEvery record saved with its value
13Build the URL list and redirect mapEvery old URL has a 200 or a one-hop 301
14Lower TTL on website records a day before launchTTL reads 300
15Change only the A and www recordsMX and TXT records unchanged
16Test https, pages, redirects, forms, booking and tagsAll pass on the live site
17Send and receive a test emailArrives, replies work, SPF and DKIM pass
18Submit sitemap and watch Search Console for two weeksNo new errors
19Remove old access and verification tokens; change passwordsOnly current people have logins
20Cancel old hosting; keep any old domain registeredOld plan closed, domains renewing

When you don't need help with this

If your site is on Squarespace or Wix in your own account, your domain is in your own name, and the developer is only a contributor, switching developers is mostly removing their access and adding the new one. You can do that yourself in an afternoon.

It gets harder when the developer owns the accounts, the site is self-hosted with years of plugins, nobody has documented the DNS zone, or ads and booking are tied into the site. That's the work we take on in our digital management service. If the question is really who owns what, start with our guide to who owns your website, domain and accounts.

Frequently asked questions

Can my web developer refuse to give me access to my website?

It depends on your contract and on whose name the accounts are in. If the domain is registered to your business, your registrar must give you a transfer code on request. Hosting and site files are governed by your agreement with the developer, so read it before you ask, and ask in writing.

How long does it take to switch web developers?

A clean handover where the old developer cooperates usually takes one to two weeks: a few days to collect access and back up, then a launch that takes minutes. A domain transfer between registrars can add several days, and a recently registered or recently transferred domain can be locked for 60 days.

Do I need to tell my old web developer I'm leaving?

Yes, and before you change anything. You need their cooperation for access, exports and transfer codes, and changing DNS while they still manage it can cause two people to edit the same records. Ask for everything on one written list with a date.

Will switching web developers hurt my Google rankings?

Not if your URLs stay the same or 301-redirect to their new equivalents, and your titles, content and structured data come across intact. Rankings usually drop when pages disappear, URLs change without redirects, or the site is accidentally set to noindex at launch.