Skip to content

Free migration tool

WordPress to Webflow 301 redirect generator

Pick your WordPress permalink structure to get Webflow wildcard rules, or paste your old URLs (or sitemap) to get one redirect per post as a Webflow-ready CSV. It runs entirely in your browser; nothing you paste is uploaded.

Free tool · runs in your browser

Generate your Webflow redirect rules

Current WordPress permalink structure

6 years covered with two rules each. The post slug is the last capture group (%3).

Webflow wildcard redirect rules
Old pathRedirect to path
/2021/(.*)/(.*)/(.*)//blog/%3
/2021/(.*)/(.*)/(.*)/blog/%3
/2022/(.*)/(.*)/(.*)//blog/%3
/2022/(.*)/(.*)/(.*)/blog/%3
/2023/(.*)/(.*)/(.*)//blog/%3
/2023/(.*)/(.*)/(.*)/blog/%3
/2024/(.*)/(.*)/(.*)//blog/%3
/2024/(.*)/(.*)/(.*)/blog/%3
/2025/(.*)/(.*)/(.*)//blog/%3
/2025/(.*)/(.*)/(.*)/blog/%3
/2026/(.*)/(.*)/(.*)//blog/%3
/2026/(.*)/(.*)/(.*)/blog/%3
/category/(.*)/blog· Category archives
/tag/(.*)/blog· Tag archives
/author/(.*)/blog· Author archives
15 rules
  • Each year gets a trailing-slash rule first: WordPress links end in “/”, and because (.*) also matches slashes, the slash-less rule alone could capture the wrong segment. Keep them in this order.
  • The year stays literal (/2023/…) instead of another (.*), so the rules can't catch unrelated pages on the new site.
  • Add specific one-to-one redirects before these wildcards: Webflow runs rules oldest first, so a wildcard added earlier wins.

Before you import: Webflow’s CSV import replaces every existing redirect on the site. Export your current redirects first and merge them into this file, then publish and test a few old URLs.

Coming soon · $49

Migrating a full site? Get the complete Webflow Migration Kit ($49): the WP XML-to-Webflow CSV Cleaner Script, a 60-Point Zero-SEO-Loss Launch Tracker, and a Post-Launch QA Sheet.

Join the waitlist

Done for you

Have 100+ URLs or complex ACF fields? Let me handle the entire migration with zero traffic loss.

WordPress to Webflow migration service

How Webflow wildcard redirects work

Webflow redirects live in Site settings › Publishing › 301 redirects. A plain rule maps one old path to one new path. A wildcard rule uses a capture group, (.*), in the Old path and refers back to what it captured with %1 in the Redirect to path. With /news/(.*) → /blog/%1, /news/launch-notes lands on /blog/launch-notes. Every extra capture group becomes %2, %3 and so on, which is how date permalinks like /2023/05/14/post-name/ get reduced to just the slug.

Characters you must escape in the old path

This is the quirk that breaks most hand-written rules. In the Old path field, Webflow requires a % in front of each of these characters:

%%%-%&%*%(%)%=%_%+%?

Hyphens are the one that catches people, because nearly every WordPress slug has them: /case-studies/(.*) has to be entered as /case%-studies/(.*). Only the Old path is escaped; the Redirect to path is written normally. The generator does this for you.

Why /%postname%/ sites can’t use one wildcard

WordPress’s most common permalink setting puts posts at the root: /post-name/. Webflow CMS items always sit inside their collection folder, so every post moves to /blog/post-name. The tempting fix, /(.*) → /blog/%1, matches every URL on the new site too: your about and contact pages get sent to 404s under /blog, and /blog/post-name matches again and loops. Root posts need one rule per URL. Paste the list from your WordPress sitemap into the bulk mapper and it writes them.

Rule order, limits and the CSV import

  • Webflow runs redirects in the order they were added, oldest first. Add specific one-to-one rules before broad wildcards.
  • Webflow recommends staying around 1,000 rules or fewer. Use wildcards for predictable groups and one-to-one rules for the rest.
  • Importing a CSV replaces every existing redirect. Export first, merge, then import.
  • Redirects don’t apply to localized subfolders automatically: /es/old-url needs its own rule.
  • A live page or CMS item at the old path wins over a redirect. Unpublish it or change its slug first.

After you publish

Open a handful of old URLs from each pattern in a private window and confirm each one lands on the right page in a single hop. Then crawl your full old-URL list against the live site: every URL should return a 200 or one 301, never a 404 or a chain. Keep an eye on the Pages report in Search Console for a few weeks.

The full step-by-step WordPress to Webflow migration guideThe 28-point Webflow migration checklist

Common questions

How do wildcard redirects work in Webflow?
Put a capture group (.*) in the Old path and reference it as %1 in the Redirect to path. /news/(.*) redirected to /blog/%1 sends /news/launch-notes to /blog/launch-notes. Each additional (.*) becomes %2, %3 and so on.
Why do hyphens need a % in Webflow redirects?
Webflow treats some characters in the Old path as special, so they have to be escaped with a % in front: %, -, &, *, (, ), =, _, + and ?. An old path of /case-studies/(.*) has to be written /case%-studies/(.*). The Redirect to path is never escaped.
Can I redirect /%postname%/ WordPress posts with one wildcard?
No. A rule like /(.*) to /blog/%1 matches every path on the new site, so /about and /contact would be sent to 404s under /blog, and /blog/post-name would match again and loop. Root-level posts need one redirect per URL, which the bulk mapper generates.
Does importing a redirect CSV keep my existing Webflow redirects?
No. A CSV import replaces every existing redirect on the site. Export your current redirects first, merge them with the generated rules, then import the combined file and publish.