Framer handles 301 redirects natively: site settings, one row per rule, old path in, new path out. The work that protects rankings happens before you open that panel — a full crawl of the old site, a one-to-one map, and a test pass on the staging domain. Get that right and traffic holds through the cutover.
TL;DR
Redirect rules live in Framer’s site settings and go live only when you publish. There is no redirect plugin and no built-in 404 log.
Build the map from five exports — crawl, sitemap, Search Console (16 months), backlinks, analytics landing pages — never from the old site’s navigation.
Trailing slashes, letter case and query strings create URL variants a naive map misses. Pick a rule for each before you write row one.
Keep every redirect to one hop. Three chained hops at 200ms latency burns ~600ms of a 2.5s LCP budget before the destination HTML is even requested.
A redirect removes a URL. A canonical merges URLs that both still exist. Swapping them is the most common self-inflicted migration wound.
Where Framer’s redirect settings live
Framer has native redirect settings in site settings. Open the project, open site settings, look for the redirects section in the sidebar. Framer shuffles panels between releases, so search the sidebar rather than concluding the feature is missing.
Each rule takes two values: the source path on the old site, the destination path on the new one. Framer outputs static pages served from a CDN, so redirects are handled at the edge. No .htaccess, no nginx block, no origin server to configure. That simplicity is the appeal and also the constraint.
Rules ship with a publish, not with a save
Adding a row does not make it live. Publishing does. If you write 180 rules across three sessions and publish once at the end, 180 untested rules go live in the same second. Publish as you go and verify in batches of twenty.
There is no redirect plugin and no automatic 404 log
Framer has no plugin ecosystem for SEO. There is no equivalent to WordPress’s Redirection plugin quietly logging every 404 and offering to patch it. After launch, your only 404 feed is Search Console plus whatever analytics you installed. That pushes the work forward: the map has to be close to complete on day one, because nobody hands you a tidy list of misses afterwards.
Build the map from a crawl, not from memory
Nobody remembers their own site. The nav shows twelve pages. The crawl shows 340. The gap is old blog posts, PDF downloads, event pages, tag archives, and the /thank-you URLs still quietly recording conversions.
Five sources, one deduped list
A full crawl of the live old site. Screaming Frog, Sitebulb, anything. Export every 200-status HTML URL. This is your spine.
The XML sitemap. Often holds URLs no internal link points to.
Search Console Performance export, Pages dimension, 16 months. Sixteen months is the maximum window Google gives you. Any URL with impressions is a URL someone can still land on.
Backlinked URLs. Search Console’s Links report, or Ahrefs/Semrush. A page with zero traffic and one strong link still matters.
Analytics landing pages, last 12 months. Catches paid and email-only URLs that were never linked internally.
Paste all five into one sheet, dedupe on the full URL, and you have the real inventory. That inventory is the first deliverable in every WordPress to Framer migration I run, before a single frame gets designed.
Give every URL an action, not just a destination
Old URL situation | Action | Why |
|---|---|---|
Direct equivalent exists on the new site | 301 to it | The normal case. One-to-one. |
Content merged into a bigger new page | 301 to the merged page | Signals consolidate, user still gets the answer. |
Thin or duplicate, no links, no impressions | Let it 404 | A redirect to something irrelevant is worse than a clean 404. |
Removed on purpose but carries backlinks | 301 to the closest parent category | Keeps the link value on a relevant page. |
Tag archives, date archives, internal search results | Let it 404 or 410 | Bulk-redirecting these to the homepage produces soft 404s. |
Still earns impressions, no new equivalent | Rebuild the page before launch | Redirect maps cannot replace missing content. |
My working rule: if a redirect does not land the visitor on a page answering the same question, it is a 404 wearing a costume.
The traps that quietly break a map
Trailing slashes
/services/seo and /services/seo/ are two URLs. Your old platform normalized one way; Framer normalizes its own way. If your map lists the non-slash form while every live link carries a slash, those hits either miss your rule entirely or take an extra hop through platform normalization. Before writing rules, load three old URLs both ways in a browser and record which form actually resolves. Normalize the whole map to that form, then add the opposite form explicitly for your top 20 URLs.
Case sensitivity
Paths are case-sensitive. Hosts are not. /About-Us and /about-us are different URLs to a crawler, and older CMS platforms leak capitalized paths into the wild. Lowercase the entire map, then search your crawl export for any uppercase character in a path and add explicit rules for the survivors.
Query strings and tracking parameters
This is where most maps fail silently. /?p=482 and /shop?product=14 are real indexed URLs on plenty of legacy sites. Path-only matching will not catch them. Rules that do match may drop the query string on the way through — harmless for ?p=482, destructive for ?utm_source=newsletter, because you lose the attribution.
Decide two things. Whether your project’s panel matches query strings at all — test it, do not assume. And whether the destination needs parameters preserved. Legacy ID parameters like WordPress’s ?p= and ?page_id= need one explicit rule per ID for the URLs that still earn impressions. The rest you let go.
Wildcards
Some redirect panels accept patterns. Some accept only literal paths. Check what yours accepts before designing a map that depends on /blog/* collapsing into one row. If it is literal-only, a 340-URL migration means 340 rows — tedious, not difficult, and one reason the redirect map sits inside the flat $1,200 base on my pricing page rather than appearing as a surprise line item.
Redirect chains and what they cost
A chain is old URL → interim URL → final URL. They appear when a site migrates twice, or when you point a rule at a path you later rename.
The cost is mechanical, not mystical. Each hop is a full request/response round trip. On a mobile connection with 200ms latency, three hops spend roughly 600ms before the browser even requests the destination HTML — against an LCP budget of 2.5 seconds. A quarter of the budget gone on nothing.
Crawling suffers too. Googlebot follows a limited number of hops per attempt — Google’s documentation puts the ceiling around ten — and each hop is a fetch spent on a URL returning no content.
The fix takes ten minutes. Run your own map’s source column through a crawler in list mode. Every row must show a single 301 landing on a 200. Any row reading 301 → 301 gets rewritten to point at the final destination directly. Then sort the map by destination and scan for any destination that also appears as a source: that is how you catch loops before they produce ERR_TOO_MANY_REDIRECTS on a live domain.
Redirect or canonical? Not interchangeable
301 redirect | Canonical tag | |
|---|---|---|
What it says | This URL moved permanently | Several URLs show this; index this one |
Old URL still loads? | No — the visitor is sent away | Yes, it stays reachable |
Signal strength | Directive: must be followed | Hint: Google can ignore it |
Use for | Migrations, renamed slugs, merged pages | Parameter versions, syndicated copies, print views |
In Framer | Site settings redirects panel | Page settings, or custom code |
Typical mistake | Redirecting a variant users still need | Canonicalizing a page that should have been redirected |
The test is one question: should the old URL still exist? If no, redirect. If yes — because a filter, parameter or duplicate view genuinely serves someone — canonicalize. Framer has no SEO plugin ecosystem, so schema and any non-default canonical go in as custom code in site or page settings. Budget an hour for that rather than hunting for a toggle.
Test every entry before you touch DNS
Framer gives every project a staging URL. Publish the rules there first. Take your source column, swap the old domain for the staging domain, run the list through a crawler in list mode, and check three columns: status is 301, hop count is 1, destination status is 200. Fix everything that fails now, while the old site is still live and nobody is losing traffic.
Then hand-check the URLs a client would notice within the hour: the ten with the most impressions, the five with the strongest backlinks, and anything printed on a business card, an ad or an email footer.
Use match-pages-first for a staged cutover
Framer Advanced Hosting supports match-pages-first. Point the domain at Framer and Framer serves the paths it has, while everything else falls through to the existing site. That turns a big-bang launch into a page-by-page move: publish the new pricing page, watch it for a day, then take the next section. On a 200-page site with real revenue running through it, that alone justifies the hosting tier.
Last checks before DNS: new sitemap reachable, robots.txt not blocking anything, self-referencing absolute canonicals on every page, analytics verified on a staging load, and no noindex left over from staging.
Week one in Search Console
Rankings do not move the moment DNS propagates. Google recrawls by priority, so the homepage updates within hours and a five-year-old blog post can take weeks.
Day one. Submit the new sitemap. Run URL Inspection on your five highest-value URLs and request indexing. If the domain itself changed, use the Change of Address tool in the old property. It exists only for domain moves and does nothing for a same-domain redesign.
Days two to seven. Watch the Pages report. Two numbers matter. *Not found (404)* — every entry is a URL you missed; add the rule, publish, validate the fix. *Page with redirect* — this should be climbing, because it is Google confirming it has seen your 301s. A flat number after several days usually means the rules never published.
In Performance, compare weekday against the same weekday, not against yesterday. A dip in the first fortnight is normal. A dip still deepening at week four is not, and the causes are almost always a chain, a canonical still pointing at the old domain, or a noindex left on from staging. Check the noindex first.
Weeks two to six. Leave the redirect list alone. External links and bookmarks keep firing for years and the rows cost nothing. If you want someone watching the recovery curve and fixing what surfaces, that is what an SEO retainer at $900/mo covers.
When this is the wrong approach
Redirects cannot rescue a migration that should not have happened.
If the old site runs WooCommerce, Framer does not replace it. Framer does not support WooCommerce, native membership or gating, or server-side logic. Shopify buy button embeds work well for a small catalogue. A 900-SKU store with faceted filtering and customer accounts is not a Framer project, and no redirect map changes that. Say it before the deposit, not after.
If your URLs are generated by a database rather than a content plan — thousands of parameter-driven pages, or user-generated content — a one-to-one manual map is impractical. That is a rules-based host problem, not a spreadsheet problem.
And if the site is under ten pages, all reachable from the nav, with no meaningful backlink profile, the process above is overkill. Crawl it, write ten rules, test them, launch. Twenty minutes. Nobody should sell you a two-week redirect audit for a brochure site.
One more honest case: if the old site already ranks well and the real complaint is speed, migrating is an expensive answer to a cheap question. A speed audit at $900 fixed will tell you whether LCP, INP and CLS can be brought inside 2.5s, 200ms and 0.1 on the platform you already own.
Frequently asked questions
Where do I add 301 redirects in a Framer site?
In site settings. Open your project’s settings, find the redirects section, and add one row per rule with the old path as source and the new path as destination. Rules take effect when you publish the site, not when you save the row. Framer serves them from its CDN, so there is no server configuration to touch.
Does a 301 redirect pass full ranking value?
Google has stated that PageRank is not diluted by 301 redirects, so a clean single-hop redirect to a relevant page preserves signals. Losses come from elsewhere: redirect chains, pointing at a page that does not answer the original query, or funnelling everything to the homepage. The relevance of the destination matters far more than the redirect mechanism.
How long should I keep redirects in place?
Permanently, unless you have a specific reason to remove one. Google treats a 301 as durable once it has recrawled and consolidated the pages, but external links, bookmarks, email archives and printed materials keep sending traffic for years afterwards. Redirect rows cost nothing to keep in Framer. The minimum defensible period is one year; the sensible answer is forever.
What is the difference between a redirect and a canonical tag?
A 301 redirect removes the old URL and sends every visitor and crawler to the new one. A canonical tag leaves both URLs live and tells search engines which version to index. Redirects are directives that must be followed; canonicals are hints Google may ignore. Redirect when the old page should stop existing, canonicalize when it should stay reachable.
Can Framer handle redirects with query strings or wildcards?
Test it in your own project rather than assuming. Framer’s redirect panel is built around path matching, and behaviour with query strings and patterns has shifted between releases. If literal paths are all you get, a 300-URL site means 300 rows — tedious, not hard. Legacy parameter URLs such as /?p=482 need one explicit rule each.
Send me a URL and I will come back inside 48 hours with a crawl summary, a redirect risk list and a fixed quote, no charge and no call required — start here.

framerfry
Founder-led Framer studio by Zakir Ullah — Official Framer Expert & Creator. Design, build, migrate, maintain and rank — one person, end to end.
© 2026 Framerfry. Built by an Official Framer Expert.
framerfry