When the same page is reachable at several addresses and none of them says which is the real one, search engines have to guess, and may split the page’s ranking between the copies.
Why Joomla sites get it
Joomla can serve one article at several URLs: its search-engine-friendly (SEF) URL, the non-SEF index.php?option=com_content&view=article&id=… form, under more than one menu or category path, and with extra query strings such as ?start=. A canonical link in the page head tells search engines which URL to index. Joomla core only adds one when the System – SEF plugin’s Site Domain is set, and even then it points at whichever URL was requested, so each duplicate still names itself.
Fix it by hand
- Link to articles consistently, ideally through one menu structure.
- Use the Redirects component for old or wrong URLs that should permanently point somewhere else.
- For the duplicates that remain, add a canonical link pointing at each article’s SEF URL, which needs a template override or an extension.
Fix it with MetaGen
MetaGen adds a canonical link to every article page pointing at the article’s SEF URL, on the host your site is configured for, however the visitor arrived. If something else has already added a canonical, MetaGen leaves it alone. It works alongside the Redirects component: canonical links handle live duplicate URLs, and redirects handle moved or missing ones.
MetaGen is free for Joomla 5 and 6. See all the SEO warnings MetaGen checks.