URL structure is the format of website addresses. SEO-friendly URLs are short, descriptive, include relevant keywords, and use hyphens to separate words. Good URL structure improves crawlability, user experience, and provides search engines with relevance signals. Avoid parameters, numbers, and unnecessary complexity.
URL Components
Anatomy of a URL
https://www.example.com/category/page-name/?parameter=value#section
| | | | | | |
protocol host subdomain path | parameter fragment
domain slug
Component Details
| Component | Example | SEO Relevance |
|---|---|---|
| Protocol | https:// | Ranking factor |
| Subdomain | www. | Can affect authority |
| Domain | example.com | Trust and brand |
| Path | /category/page/ | Structure and keywords |
| Parameters | ?id=123 | Often ignored or problematic |
| Fragment | #section | Not indexed |
URL Best Practices
Keep URLs Short
Shorter URLs perform better.
| URL | Assessment |
|---|---|
| /seo-guide/ | Excellent |
| /blog/seo-guide/ | Good |
| /blog/marketing/digital/seo/beginners-guide-to-seo/ | Too long |
Ideal length: 50-60 characters (path portion)
Use Descriptive Words
URLs should describe page content.
Good:
/keyword-research-guide/
/best-seo-tools/
/technical-seo-checklist/
Bad:
/post12345/
/p?id=789
/document1/
Include Target Keywords
Include primary keyword naturally.
/seo-content-writing/
/link-building-strategies/
/core-web-vitals-optimization/
Note: Don’t force keywords or make URLs unnatural.
Use Hyphens to Separate Words
✓ /keyword-research/
✗ /keyword_research/
✗ /keywordresearch/
✗ /Keyword%20Research/
Hyphens are treated as spaces by search engines.
Use Lowercase
✓ /page-name/
✗ /Page-Name/
✗ /PAGE-NAME/
Mixed case can cause duplicate content issues.
Be Consistent
Choose a format and stick to it.
Decide on:
- Trailing slash or not (/page/ vs /page)
- www or non-www
- File extensions or not
URL Structure Patterns
Flat Structure
example.com/page-name/
example.com/another-page/
Pros: Short URLs, all pages equal Cons: No hierarchy signals, can get messy at scale
Hierarchical Structure
example.com/category/subcategory/page/
example.com/products/shoes/running-shoes/
Pros: Clear organization, category context Cons: Longer URLs, deeper nesting
Semantic URL Structure
Based on topical relationships. This is the pattern we use on Semantic.my and it works well for Malaysian content sites with clear topic hierarchies.
example.com/seo/
example.com/seo/technical-seo/
example.com/seo/technical-seo/core-web-vitals/
You can audit your existing URL structure with Screaming Frog - it visualizes crawl depth and flags overly deep or inconsistent paths.
Blog URL Structures
| Pattern | Example | Recommendation |
|---|---|---|
| Flat | /post-name/ | Good for most blogs |
| With /blog/ | /blog/post-name/ | Good, indicates blog section |
| With date | /2026/01/post-name/ | Avoid for evergreen content |
| Category | /blog/category/post/ | Good for large blogs |
What to Avoid
Dynamic Parameters
✗ /page.php?id=123&cat=5
✓ /products/running-shoes/
If unavoidable:
- Use canonical tags
- Configure URL parameters in Search Console
- Implement clean URL rewrites
Stop Words (Usually)
Words like “a”, “the”, “and”, “of” are often unnecessary.
✓ /seo-content-writing-guide/
✗ /a-guide-to-the-art-of-seo-content-writing/
Exception: If removing them makes the URL confusing.
Keyword Stuffing
✗ /seo-seo-services-best-seo-seo-company/
✓ /seo-services/
Dates in URLs (Usually)
✗ /2026/01/15/seo-guide/
✓ /seo-guide/
Dates make content appear outdated and create problems when updating.
Session IDs and Tracking
✗ /page/?sessionid=abc123&ref=google
✓ /page/
Handle tracking via other methods (cookies, server-side).
Category and Subcategory URLs
E-commerce Structure
/products/
/products/shoes/
/products/shoes/running/
/products/shoes/running/nike-air-zoom/
Content Site Structure
/seo/
/seo/technical-seo/
/seo/technical-seo/core-web-vitals/
Keep Depth Manageable
Recommended maximum: 3-4 levels deep
✓ /category/subcategory/page/
✗ /cat/subcat/subsubcat/subsubsubcat/page/
Deep URLs:
- Are harder to remember
- May signal less important content
- Dilute keyword signals
URL Migration
When to Change URLs
Change if:
- Current URLs are broken
- Severe technical issues
- Major site restructure required
Don’t change if:
- Minor improvements only
- URLs work and have backlinks
- Small SEO gain expected
Migration Process
- Map old URLs to new URLs
- Implement 301 redirects
- Update internal links
- Update sitemaps
- Monitor Google Search Console for crawl errors and indexing drops
- Update external links where possible
Redirect Best Practices
# Individual redirect
Redirect 301 /old-page/ /new-page/
# Pattern redirect
RedirectMatch 301 ^/blog/([0-9]{4})/(.*)$ /blog/$2
URL Structure Checklist
Format
- Lowercase letters
- Hyphens separate words
- No special characters
- No spaces or underscores
- Consistent trailing slash usage
Content
- Descriptive of page content
- Includes relevant keywords
- Short (under 60 characters path)
- No unnecessary words
- No dates (for evergreen content)
Technical
- No dynamic parameters
- No session IDs
- No duplicate URL versions
- Canonical tags in place
- HTTPS used
URL Examples by Page Type
| Page Type | Good URL | Bad URL |
|---|---|---|
| Homepage | / | /home.html |
| Category | /seo/ | /category.php?id=1 |
| Blog post | /keyword-research-guide/ | /2026/01/15/p123/ |
| Product | /products/nike-air-zoom/ | /products/?id=456 |
| Service | /seo-services/ | /services/1/ |
URL structure shapes how search engines crawl your site, how users perceive your pages, and how easy the site is to maintain long-term. Short, descriptive URLs with relevant keywords and hyphens between words are the baseline.
Leave existing URLs alone unless they are genuinely broken or misleading - the redirect cost rarely pays off for minor improvements. For new content, follow the practices above from the start and keep nesting shallow.
Pair clean URLs with proper canonicalization, thoughtful internal linking, and solid on-page SEO foundations.