Skip to main content
When you rename a page, migrate from an old site, or want to forward a path to somewhere else, redirects keep links working and preserve your SEO.

Manual

Add one at a time

Bulk import

Upload a CSV

Conversational

Ask the AI
All three paths live at:
Project > Hosting > Redirects

Why Redirects Matter

  • Preserve SEO: a 301 tells Google the page moved permanently — ranking signals transfer
  • Migrations: old URLs from a previous site keep working after launch
  • Short links: forward /demo to a booking page
  • Renamed paths: /old-blog/* can funnel into /articles/* without broken bookmarks

Option 1: Add Manually

1

Click Add Redirect

On the Redirects page, click + Add Redirect.
2

Fill in From Path

The path visitors are coming from. Examples:
  • /old-page
  • /blog/2020-launch
  • /about-us
3

Fill in To Path

Where they should end up. Can be a path on your site or a full external URL:
  • /new-page
  • /about
  • https://docs.example.com/getting-started
4

Pick a Status Code

  • 301 — permanent move. Search engines transfer SEO value. Use this by default.
  • 302 — temporary. Use when the new URL might revert later (A/B tests, maintenance).
5

Pick a Match Type

  • Exact — path matches precisely (/old-page matches only /old-page)
  • Prefix — matches everything starting with the pattern (/blog/* matches /blog/anything)
  • Regex — advanced pattern matching (use sparingly)
6

Toggle Active, add Notes, save

You can disable a redirect without deleting it. Notes are optional but helpful when someone else revisits the list later.

Option 2: Bulk CSV Import

Useful for site migrations — export the old site’s URLs and their new homes into a spreadsheet.
1

Prepare your CSV

Columns: from_path, to_path, status_code, match_type.
from_path,to_path,status_code,match_type
/old-about,/about,301,exact
/blog/*,/articles/*,301,prefix
/team,/company/team,301,exact
/demo,https://cal.com/acme/demo,302,exact
2

Upload

Click Import CSV on the Redirects page and pick your file. Hiveku validates each row and shows any errors inline before importing.
3

Review and confirm

You’ll see a preview of added redirects. Click Import to commit.

Option 3: Ask the AI

From the AI chat:
Add a 301 redirect from /old-blog to /blog
Import these redirects:
/old-about -> /about
/team -> /company/team
/demo -> https://cal.com/acme/demo
The AI validates paths and adds them in bulk.

Deploy Required

Redirects don’t go live until you deploy. A Pending Redirects counter at the top of the page shows how many changes are waiting. Click Deploy to push them.

Blocked Characters

For security, these characters aren’t allowed in paths: quotes (", '), backticks, pipes (|), $, {, }, [, ]. If you need a path with special characters, URL-encode them first.

Performance and Limits

Up to 150 active redirects are handled at the CDN edge for instant response. Beyond that limit, Hiveku uses an alternate mechanism that still works, just with minor added latency (a few ms). If you’re importing thousands, consider consolidating with prefix matches where possible.

404 Handling

At the bottom of the Redirects page you can pick how unmatched URLs behave:
  • SPA mode — serve /index.html for unmatched paths. Correct for React, Vue, or any client-side routed single-page app.
  • Static mode — serve a custom 404.html. Correct for static sites with server-rendered pages.
Pick SPA mode if your client-side routes are breaking on refresh. Pick Static mode if you have a real multi-page site and want a proper 404.

Verifying a Redirect

1

Deploy first

Make sure the Pending counter is zero.
2

Open the old URL in a new tab

Use an incognito window to bypass browser cache.
3

Check the Network tab

Open browser dev tools (F12) > Network. The old URL should show a 301 or 302 response, with a Location header pointing at the new URL.
4

Confirm the final destination

You should land on the new URL.

Troubleshooting

Did you deploy? The Pending Redirects counter at the top of the page shows uncommitted changes. Click Deploy to push them live.
A prefix rule like /blog/* matches /blog, /blog/post-1, /blog/anything. If you want only direct children and not the root, use two rules — exact for /blog and prefix for /blog/.
The to_path matches a pattern that the from_path also matches. For example, a prefix rule /old/* -> /old-new/* where /old-new itself still matches the original rule. Test your patterns against concrete example URLs.
Use 301 for permanent moves — this is what transfers link equity. 302 tells search engines the move is temporary and ranking stays with the old URL. When in doubt, use 301.
Common issues: blocked characters in paths, invalid status codes (must be 301 or 302), match_type misspelled (must be exact, prefix, or regex), or duplicate from_path values (one rule per source path).

What’s Next?

Custom Domain

Point your domain at the site

Site Enhancements

Enable SEO, security headers, and more with one click