Home › The SEO guide for local businesses › What a canonical tag does and when a local site needs one
SEO Guide · Chapter 8 of 30
What a canonical tag does and when a local site needs one
This page is for an owner who has seen the word canonical in a plugin or a report and wants to know whether it matters. After reading it you will know what the tag does and how to read it on any page.
In one paragraph
A canonical tag is one line in a page's HTML that tells Google which address is the real version of that page when the same content can be reached at more than one, and a local site needs it whenever booking links, tracking codes, www and non-www, or trailing slashes create extra copies of a page. It is one link tag in the head of the page, marked rel canonical, holding the preferred address. Without it Google picks a version on its own and splits credit across addresses that are one page. Most SEO plugins set it by default, and the job is to check that they have.
What a canonical tag is
A canonical tag is a line in the head of a page’s HTML, invisible to a visitor, that names the one address Google should treat as the real page. When Google finds the same content at several addresses, it reads the tag on each and folds them all into the one the tag names. Links, rankings, and the place in the index all go to that one address.
The tag is needed because a single page can usually be reached several ways without anyone intending it. With and without www. With http and with https. With and without a trailing slash. With a tracking code added by an email or an ad. With a sort or filter parameter added by a booking or listing system. Each of those is a different address to Google, and each is a duplicate of the page unless the tag says otherwise.
A canonical tag can also point at a page on another site, which is how a listing or an article republished elsewhere can send credit back to the original. On most local sites, though, the tag on each page points at that page’s own clean address, and that is the whole job.
What a missing canonical tag looks like on a dental practice site
Lakeshore Family Dentistry in Coeur d’Alene has two dentists, sees about 45 patients a day, and books online through a scheduling system that links back to the site with a source code in the address. The site had 26 pages. Search Console showed 71 addresses crawled, 26 indexed, and 40 filed under “Duplicate without user-selected canonical”.
The 40 were the same 26 pages under other names. The scheduler’s confirmation emails linked to /new-patients/?src=sched. A Facebook campaign linked to the Invisalign page with a tracking code. The homepage answered at lakeshorefamilydentistry.com, at www.lakeshorefamilydentistry.com, and at both with /index.php on the end. The site had been moved from http to https two years earlier, and the http addresses still returned the page instead of redirecting.
Google was choosing among them page by page. For the Invisalign page it had kept the tracking-code version, so the address shown in search results carried ?fbclid= and 60 characters of nonsense. The practice’s own clean address for its highest-value service was the one Google had set aside.
A worked example: setting canonical addresses on a Coeur d'Alene dental site
Every page was given one canonical address in the form https://www.lakeshorefamilydentistry.com/page-name/, and every other way of reaching the page was pointed at it, either with the tag or with a redirect. The Invisalign page shows the full set.
| Address Google had crawled | How it got there | What Google had done | Fix |
|---|---|---|---|
| https://www.lakeshorefamilydentistry.com/invisalign/ | Site menu | Set aside as duplicate | Named as canonical on every version |
| https://www.lakeshorefamilydentistry.com/invisalign/?fbclid=IwAR2x… | Facebook ads | Kept as the indexed version | Canonical tag points to the clean address |
| https://www.lakeshorefamilydentistry.com/invisalign?src=sched | Scheduler emails | Set aside as duplicate | Canonical tag points to the clean address |
| https://lakeshorefamilydentistry.com/invisalign/ | Old links with no www | Set aside as duplicate | Redirected to the www address |
| http://www.lakeshorefamilydentistry.com/invisalign/ | Links from before the move to https | Set aside as duplicate | Redirected to the https address |
| https://www.lakeshorefamilydentistry.com/invisalign | A link in the footer with no trailing slash | Set aside as duplicate | Redirected, footer link corrected |
The tag that now sits in the head of every version of that page is this one line.
<link rel="canonical" href="https://www.lakeshorefamilydentistry.com/invisalign/">
Before the fix, the page had no canonical tag at all, so Google was reading nothing in that spot. The tag was set through the site’s SEO plugin, which writes it on every page from the page’s own address once the site’s preferred domain is set to the www and https version. The four redirects were set once at the server level for the whole site. Six weeks later the Pages report showed 26 indexed and 0 duplicates, and the address in search results for the Invisalign page was the clean one.
How to check your own canonical tags
- Open any page of your site, right-click, choose View Page Source, and search for
rel="canonical". The address in thehrefshould be that page’s own clean address, with https, your preferred www or non-www form, and a trailing slash if the rest of the site uses one. - In Search Console, open the Pages report and look for “Duplicate without user-selected canonical” and “Duplicate, Google chose different canonical than user”. The first means the tag is missing. The second means the tag is there and Google disagreed with it, which usually means it points at the wrong page.
- Type your domain into a browser four ways, with and without www and with http and https. All four should end at one address. If any of them loads without redirecting, your host or your SEO plugin has a setting for it.
- Paste any page into URL Inspection in Search Console. It reports both the canonical you declared and the one Google selected. They should match.
- On a WordPress site with Rank Math or Yoast, the canonical is written by the plugin from the page address. Check the plugin’s General settings for the site address form, and check the XML sitemap to confirm it lists the same clean addresses.
What we do about canonical tags
You will get a list of every address Google has crawled on your site, grouped by the page it actually is, with the version Google kept marked and the clean address each group should point to. The canonical tag is set on every page through your SEO plugin, the domain and protocol redirects are set once for the whole site, and any internal links carrying tracking codes or old forms of the address are corrected. Afterwards the duplicate count in your Search Console Pages report is the check, and it should read zero. Canonical and redirect work is part of the site audit that opens the SEO work we do for local businesses.
Questions people ask about SEO: what a canonical tag does and when a local site needs one
What is a canonical tag in simple terms?
A canonical tag is a line of HTML that tells Google which address is the real one when the same page can be reached at several. It looks like a link tag in the head of the page with rel="canonical" and the preferred address. Google folds every other version into the one the tag names.
Does every page need a canonical tag?
Yes, every page should carry a canonical tag pointing at its own clean address, and most SEO plugins add one automatically. A page without one leaves Google to choose among any versions it finds. The tag costs nothing on pages with only one address and protects them the day a tracking code or a scheduler link creates a second.
What is the difference between a canonical tag and a redirect?
A redirect sends the visitor and Google from one address to another, so the first address no longer shows a page at all, while a canonical tag leaves both addresses working and tells Google which one to credit. Use a redirect when the old address should stop existing, such as http or non-www. Use a canonical tag when both addresses need to keep working, such as a page with a tracking code.
Can a canonical tag point to a different website?
Yes, a canonical tag can name a page on another domain, and it is used when the same article or listing is published on two sites so that credit goes to the original. Google treats it as a strong hint rather than a command. On a local business site the tag almost always points at the page's own address.
What happens if the canonical tag is wrong?
A canonical tag pointing at the wrong page tells Google to drop the page it sits on in favor of the one it names, so the page disappears from search. This happens when a template copies the homepage canonical to every page or when a site move leaves old addresses in the tags. Search Console reports it as "Duplicate, Google chose different canonical than user" when it notices the mistake.
This page is part of the The SEO guide for local businesses. The other guides: SEO, AEO, GEO.
Have us do this on your site
Send the address of your site. We fetch every page from outside, the way Google does, and send back the list: every page, every flag, and what we would fix first. Then we fix it, verify each change from outside, and report it in plain language every month.
