What URL structure means
The URL of a page is its address on the web. Every URL has the same anatomy:
https://theseocompany.com.au/learn/on-page-seo/url-structure/
| | | |
protocol domain path slug
URL structure refers to everything to the right of the domain: the folders (path) and the page identifier (slug). Together they tell Google and humans where this page sits inside the site, and what the page is about.
You will hear "URL slug" used to mean the last segment of the path: url-structure in the example above. You will also hear "URL path" to mean all of the segments: /learn/on-page-seo/url-structure/. Both terms are useful, and getting them right matters because they show up in the SERP, in browser tabs, in shared links and in Search Console.
Why URLs matter for SEO and humans
Three reasons URL quality moves the needle.
1. Google reads URLs as a topic signal. Google has confirmed that words in the URL are a (small) ranking factor. A page at /emergency-electrician-perth/ has a clear topical signal baked into the address. A page at /page-id-2384/ has none. The signal is small but consistent and stacks with every other on-page element.
2. Humans read URLs in the SERP. Google displays the URL (or a breadcrumb derived from it) under the title in search results. A readable URL helps click-through. A long string of numbers and parameters reduces it. Eye-tracking studies on SERP behaviour consistently show that searchers glance at the URL after the title and before the meta description.
3. Stable URLs accumulate authority. Every backlink, every social share, every email mention points to a specific URL. If that URL stays the same for five years, all those links compound. If you change the URL without a 301 redirect, the backlinks point at a dead page and the authority resets to zero. URL stability is one of the cheapest ways to protect years of SEO work.
The rules: nine things that make a good URL
- Short. Three to six words in the slug.
/title-tags/beats/how-to-write-a-good-title-tag-for-seo-in-2026/. - Lowercase. URLs are case-sensitive on most servers.
/Pageand/pagecan be treated as different URLs and cause duplicate content. Use lowercase only. - Hyphens, not underscores. Google reads hyphens as word separators. Underscores get treated as part of a single token. Use
emergency-electrician-perth, neveremergency_electrician_perth. - Descriptive. The slug should tell you what the page is about without context.
/contact/works./page-42/does not. - Keyword-aligned but not stuffed. Include the primary keyword once.
/emergency-electrician-perth/. Not/emergency-electrician-perth-best-cheapest-fast-24-7/. - No stopwords if you can avoid them. Words like "a", "the", "of", "for" usually add nothing.
/how-to-write-title-tags/reads as well as/how-to-write-a-title-tag-for-seo/and is shorter. - Shallow. Two or three folder levels deep is the practical limit.
/learn/on-page-seo/title-tags/is three levels and clear./blog/categories/seo/on-page/tactics/title-tags/article-2384/is too many. - Consistent trailing slash. Pick one form (with or without trailing slash), make every URL match, and 301 the other form to it. Most modern static hosts use trailing slashes.
- Stable. Once published, the URL does not change. If you must change it, set up a 301 redirect from the old URL to the new one before going live.
Patterns by page type
Service page
Pattern: /services/[service-name]/ or /[service-name]/
Examples:
/services/seo//emergency-electrician-perth//services/website-audits/
Location page
Pattern: /[service]-[suburb]/ or /locations/[suburb]/
Examples:
/seo-fremantle//seo-joondalup//locations/perth-cbd/
Blog post / cluster
Pattern: /[topic]/[slug]/ or /blog/[slug]/
Examples:
/learn/on-page-seo/title-tags//blog/how-search-engines-work//learn/local-seo/google-business-profile/
Product page
Pattern: /products/[product-name]/
Avoid product IDs and SKUs in the URL. They add nothing for humans or SEO. Use the product name slug instead.
Category page
Pattern: /[category]/ or /shop/[category]/
Category URLs should be short and descriptive: /solar-inverters/, not /category/electronics/renewable-energy/inverters-and-batteries/.
How to fix the bad URLs already live
Most Perth sites we audit have at least a handful of URLs that need rewriting. A messy slug, a deep folder, an inconsistent trailing slash, or a duplicate accessible at both /page and /page/. Here is the safe sequence:
- Audit first, change second. Run Screaming Frog. Sort by URL length, look for the worst offenders. Sort by depth, find anything four or more folders deep. Make a list before you touch anything.
- Prioritise by traffic. Use Search Console Performance to see which URLs actually get traffic. Fix the high-traffic ugly ones first. Low-traffic ugly URLs can be left until next quarter.
- Plan the new URL before you change it. Write the new slug. Check it does not clash with an existing URL. Confirm the rest of the site can be updated to link to the new URL.
- Set up the 301 redirect. The 301 must be in place before the new URL goes live. Test it works in incognito.
- Update internal links to point at the new URL. Use Screaming Frog to find every page that linked to the old URL. Update the links to point at the new URL directly. Avoid chains of redirects.
- Update XML sitemap and resubmit in Search Console. The sitemap should now show the new URL.
- Monitor for four to six weeks. Watch Search Console for crawl errors and rank changes. Some loss is normal during the transition. If a previously ranking page loses more than 30 percent of its impressions, dig in.
Done correctly, you keep almost all the ranking authority and lose maybe a week or two of traffic during the crawl-and-recompute period. Done poorly (no redirects, broken internal links, sitemap not updated) you can lose 50 percent of organic traffic and never fully recover.
Mistakes to avoid
- Decide the URL slug before you write the page. Treat it as part of the brief.
- Stick to lowercase, hyphenated, three-to-six-word slugs.
- Set a global rule (trailing slash or not) and enforce it via 301 at the server level.
- Audit the URL list once a quarter as part of the technical SEO sweep.
- Use 301 redirects whenever a URL has to change.
- Date-stamped blog post URLs (
/2024/03/article-name/). They date the content artificially. - Mixed-case URLs. They cause duplicate-content issues on case-sensitive servers.
- Query strings as the main URL:
/?page_id=42. Use rewriting to clean them up. - Session IDs in URLs:
/page?sid=abc123. Strip them. - Five-folder-deep URLs that nobody could remember.
- URLs that change every time the title changes. Slug stability is more important than slug perfection.
- Special characters: spaces, ampersands, accented letters in slugs. Use plain ASCII hyphenated.
Tools and checklists
- Screaming Frog. The URL list, sorted by length, depth and duplicate-content risk. Free to 500 URLs.
- Google Search Console. URL Inspection tool shows the canonical URL Google picked for any page. Useful for spotting duplicate-URL problems.
- Server-side 301 redirect rules. In Cloudflare Pages this lives in
_redirects. In Apache it's.htaccess. In Nginx it's the server block. Set rules at the server, never as client-side JavaScript. - Our free SEO audit tool. Flags long URLs, mixed-case URLs, and duplicate-content risks from trailing-slash mismatches.
A URL checklist before you publish
- Slug is three to six words?
- All lowercase?
- Hyphens only, no underscores or spaces?
- Primary keyword included once?
- No stopwords if avoidable?
- Two to three folder levels max?
- Trailing slash matches the site standard?
- No date, session ID, or numeric ID?
- URL does not clash with an existing page?
- If replacing an old URL, 301 redirect is in place?
Perth and WA context
Trades with WordPress defaults. A common Perth pattern is a tradie WordPress site with the default permalink set to ?p=42 or /2024/04/page-title/. Switching to the /postname/ permalink and 301'ing the old URLs lifts the site noticeably because every URL suddenly has topical signal. We did this for a Joondalup electrical contractor and saw 18 percent more organic traffic over the next quarter. See SEO Joondalup and trades SEO.
Multi-suburb service businesses. A Perth plumbing business serving 18 suburbs needs a clean URL structure or the site becomes unmanageable. We use /plumber-[suburb]/ as the location-page pattern, every URL the same shape. Sitemap and internal linking become trivial. See SEO Fremantle, SEO Cockburn and SEO Mandurah for the pattern in action.
WooCommerce stores with category bloat. WooCommerce's default URL setup nests products four to six folders deep. We strip the /shop/category/ prefix and use flat /products/[slug]/ URLs. Smaller URL, faster crawl, cleaner sitemap. See e-commerce SEO for the full set-up.
Mining services with legacy IDs. Industrial sites often have legacy CMS systems generating URLs like /index.php?id=384. Migrating these to clean slugs while maintaining 301s preserves the existing rankings and lifts the new URLs. The mining SEO guide and Karratha SEO cover the regional patterns.
For the broader on-page picture, return to the On-Page SEO pillar. For the technical side of redirects, 301s and canonical tags, the technical SEO pillar is the next stop. And for the deeper context on how crawlers move through your URLs, see crawling, indexing and ranking explained.