Limited time Launch offer — 50% off every plan See plans

Duplicate Finder

Docs › Keeping a site healthy

Two or more posts fighting each other for the same ranking hurt both of them. The duplicate finder groups posts that are the same thing published more than once — by title similarity or by matching content — and lets you delete the extras or redirect them all to one keeper.

In one lineScan, review each suggested group, then delete or 301-redirect the extras to your chosen keeper. The suggested keeper is the longest post in the group — check it before accepting it.

Two ways a match is found

Match type How it works
Similar title/slug Titles are reduced to their meaningful words — lower-cased, stop-words removed, simple plurals singularised — and compared as sets. Two posts group together once their word sets overlap 70% or more.
Matching content The first 4,000 characters of the stripped article body are hashed. An identical hash is treated as the same article regardless of what the title says.

The 70% overlap threshold is deliberately fuzzy rather than an exact match, so best-solar-heater, solar-heater-review and top-solar-heaters-2026 land in the same group instead of three separate exact-key buckets that never connect.

Slug is checked before title

The URL slug is the primary signal, with the title used only as a fallback when the slug carries too little information — a slug is the more stable identifier, since titles get rewritten for SEO more often than URLs do once a page has traffic.

The suggested keeper is a word-count guess, not a traffic one

Read this before accepting a suggestion. The pre-selected keeper in each group is simply the post with the most words — the tool has no visibility into which one actually ranks, gets clicks, or earns commissions. A shorter post with real traffic and backlinks is often the better keeper. Check your analytics or Search Console before confirming, rather than accepting the suggestion by default.

Delete, or redirect and consolidate

Two ways to resolve a group:

  • Delete the extras. Simple, and right when the duplicates have no traffic or backlinks of their own worth preserving.
  • 301-redirect them to the keeper. Consolidates whatever ranking signal the extras had onto one strong URL, rather than losing it. This is the right call whenever a duplicate might have earned any external links or direct traffic of its own.

Redirects survive the post being deleted later

Every redirect is written to two separate maps: one keyed by post ID, one keyed by the URL path itself. The ID-based map only works while the source post still exists; the path-based map keeps working after it is gone. Writing both at once means a post redirected today and deleted next month does not quietly start returning a 404 the moment it is removed.

Redirects keep firing even if a licence lapses. The enforcement that actually serves the 301 to visitors runs regardless of licence status, so a redirect you already set up never breaks. Only the admin tool that finds and creates new redirects is gated — existing ones are permanent once saved.

Every action is saved for review

Redirect groups are kept in a history you can review and restore from, so a redirect decision is not a one-way door if you change your mind later.

Common questions

Should I always accept the suggested keeper?

No. It is chosen by word count alone, with no traffic data behind it. Check Search Console or your analytics for the group before deciding which post actually deserves to survive.

Why are three posts with slightly different titles grouped together?

Because grouping is fuzzy: a 70% or higher overlap in the meaningful words of the slug or title is enough to join a group, which deliberately catches near-duplicates that an exact match would miss.

What happens to a redirect if I later delete the source post?

Nothing breaks. The redirect is stored by URL path as well as by post ID specifically so it keeps working after the post is gone.

Will an existing redirect stop working if my licence expires?

No. Redirects you have already set up keep firing regardless of licence status — only the tool for finding and creating new ones is gated.