Trailing Slashes, Case and Hostnames: Keeping One URL per Page
To a search engine, URLs that differ by a single character are different URLs. A page served at both /guides/urls and /guides/urls/, or on both www and the bare domain, can be crawled twice and split its signals between two addresses. Choosing one form and enforcing it keeps reports clean and consolidation straightforward.
Where duplicates come from
The usual sources are an optional trailing slash, mixed letter case in paths, the www and non-www hostnames, HTTP and HTTPS, and default documents such as index.html. Paths are case-sensitive on most servers, so /Guides/ and /guides/ can be distinct even when they show the same page.
Tracking parameters added by campaigns and social sharing create another family of duplicates.
Choosing and enforcing one form
Pick one hostname, one protocol and one trailing-slash convention, then permanently redirect every other form to it in a single hop. Use lowercase paths for new URLs. Apply the same convention in internal links, canonical tags and sitemaps so redirects are only a safety net.
Test the rules together, because separate rules for slashes and hostnames can combine into chains or loops.
http://example.com/Guides/urls -> 301 -> https://example.com/guides/urls/
https://www.example.com/guides/urls -> 301 -> https://example.com/guides/urls/Verifying the result
Request each variant of a sample of URLs and confirm it reaches the preferred form in exactly one redirect. In server logs, crawler requests to non-preferred variants should decline over time as engines learn the canonical form.
When analytics or search reports still show variants months later, search for internal links or external campaigns that keep generating them.