Canonical Consistency Audit
Pricing
$4.99/month + usage
Canonical Consistency Audit
A canonical consistency audit tool that crawls any list of URLs, inspects canonical tags, and flags missing, duplicate, or mismatched canonicals so SEO teams can fix indexation issues before they damage rankings.
Pricing
$4.99/month + usage
Rating
0.0
(0)
Developer

ZeroBreak
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Canonical Consistency Audit — Find & Fix Canonical Tag Issues on Any Website
Canonical consistency audit tool that checks every URL for correct canonical tag configuration so search engines always index the right page. Feed it any list of URLs and get instant, structured insight into canonical health across your entire site.
Use Cases
- SEO auditing — Bulk-check hundreds of pages before a site launch to ensure every URL has a valid, self-referencing canonical tag
- Indexation troubleshooting — Identify pages where canonicals point elsewhere, causing the wrong version to rank
- Duplicate content detection — Surface pages with missing or conflicting canonical tags that split link equity
- Redirect chain validation — Catch redirect hops that silently break canonical intent
- QA for migrations — Verify canonical consistency after domain migrations or platform changes
- Ongoing SEO monitoring — Schedule regular audits to detect canonical regressions before they affect rankings
Input
| Parameter | Type | Default | Description |
|---|---|---|---|
url | string | — | Single URL to audit |
urls | array | — | List of URLs to audit. Merged with url if both provided |
maxConcurrency | integer | 5 | Number of URLs audited in parallel (1–50) |
Example Input
{"urls": ["https://example.com/","https://example.com/blog/seo-tips","https://example.com/products/widget-pro"],"maxConcurrency": 10}
What Data Does This Actor Extract?
The actor stores one result per URL in a dataset. Each entry contains:
{"inputUrl": "https://example.com/blog/seo-tips","finalUrl": "https://example.com/blog/seo-tips","statusCode": 200,"hasCanonical": true,"canonicalCount": 1,"canonicalUrl": "https://example.com/blog/seo-tips","isSelfCanonical": true,"isHealthy": true,"issues": [],"auditedAt": "2025-06-01T10:23:45.123456+00:00"}
| Field | Type | Description |
|---|---|---|
inputUrl | string | The original URL submitted for auditing |
finalUrl | string | The final URL after following redirects |
statusCode | integer | HTTP response status code |
hasCanonical | boolean | Whether the page has at least one canonical tag |
canonicalCount | integer | Total canonical tags found (healthy = 1) |
canonicalUrl | string | Canonical URL declared on the page (absolute) |
isSelfCanonical | boolean | Whether the canonical points back to this page |
isHealthy | boolean | True when exactly one self-referencing canonical is found and no issues detected |
issues | array | Human-readable list of issues found on this page |
auditedAt | string | ISO 8601 timestamp of the audit |
How It Works
- Accepts one or more URLs via
url/urlsinput fields - Deduplicates and normalizes all URLs (adds
https://if scheme is missing) - Fetches each page concurrently using async HTTP (bounded by
maxConcurrency) - Parses the HTML response and locates all
<link rel="canonical">elements - Resolves relative canonical hrefs to absolute URLs
- Checks for issues: missing canonical, multiple canonicals, non-self canonical, empty href
- Flags redirect chains where the final URL differs from the input
- Pushes a structured result for every URL to the Apify dataset
FAQ
What counts as a healthy canonical?
A page is healthy when it has exactly one <link rel="canonical"> tag whose href resolves to the same URL as the page itself (after normalizing trailing slashes and scheme).
Does the actor follow redirects? Yes. It follows redirect chains and records the final URL. If the final URL differs from the input, an issue is logged so you can identify unintentional redirect hops that may break canonical intent.
Can it handle relative canonical URLs?
Yes. Relative hrefs like /page or ../other are resolved against the final URL before comparison.
How many URLs can I audit in one run?
There is no hard limit. Use maxConcurrency to tune throughput vs. server load. For very large lists (10,000+) consider splitting into batches.
Why does my page show isSelfCanonical: false?
The canonical href on that page points to a different URL — typically a preferred version (with/without trailing slash, www vs non-www, or a completely different URL). Review the canonicalUrl field to see where it points.
Integrations
Connect Canonical Consistency Audit with other apps and services using Apify integrations. You can integrate with Make, Zapier, Slack, Airbyte, GitHub, Google Sheets, Google Drive, and many more. You can also use webhooks to trigger actions whenever results are available.
Start your canonical consistency audit today and ensure every page on your site is signalling the right URL to search engines.