Orphan Page Finder
Pricing
from $4.90 / 1,000 page auditeds
Orphan Page Finder
Find orphan pages by comparing sitemap URLs, crawl-discovered URLs, and internal link graph relationships.
Pricing
from $4.90 / 1,000 page auditeds
Rating
0.0
(0)
Developer
junipr
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Store Positioning
Store title: Orphan Page Finder
Short description: Find orphan pages by comparing sitemap URLs, crawl-discovered URLs, and internal link graph relationships.
SEO title: Orphan Page Finder — technical SEO, web, and domain audit
SEO description: Find orphan pages by comparing sitemap URLs, crawl-discovered URLs, and internal link graph relationships. Use it to find crawlability, indexability, security, metadata, and page-quality issues with evidence-backed rows and audit reports.
Categories: SEO_TOOLS
Keywords: orphan, finder, sitemap, web/domain audit
Fixed-Inclusive PPE Pricing
This actor uses pay-per-event pricing. Event prices include Apify platform usage; users are not expected to pay a separate platform-usage pass-through charge for the configured pricing model.
- Tier: W1 — Web/domain audit
- Primary event:
page-auditedat $0.00490 base - Default max charge: $10.00
- Store discounts: FREE/BRONZE base, SILVER discounted, GOLD deepest approved discount
Event set:
actor-start: base $0.00500, GOLD $0.00400. Orphan Page Finder: charged when actor start is completed. The price includes Apify platform usage; no separate usage pass-through is intended.page-audited: base $0.00490, GOLD $0.00392. Orphan Page Finder: charged when page audited is completed. The price includes Apify platform usage; no separate usage pass-through is intended.record-extracted: base $0.00372, GOLD $0.00298. Orphan Page Finder: charged when record extracted is completed. The price includes Apify platform usage; no separate usage pass-through is intended.finding-emitted: base $0.00372, GOLD $0.00298. Orphan Page Finder: charged when finding emitted is completed. The price includes Apify platform usage; no separate usage pass-through is intended.audit-report-generated: base $0.05000, GOLD $0.04000. Orphan Page Finder: charged when audit report generated is completed. The price includes Apify platform usage; no separate usage pass-through is intended.
Public Task Concepts
- Audit Orphan Page controls on a capped public page set
- Find high-priority Orphan Page issues before release
- Validate Orphan Page evidence from supplied pages
- Prioritize Orphan Page fixes with severity and proof
- Export Orphan Page QA rows for client review
Find orphan pages by comparing sitemap URLs, crawl-discovered URLs, and internal link graph relationships.
What This Actor Does
Orphan Page Finder loads XML sitemaps (including capped sitemap indexes), performs a bounded same-origin crawl from explicit entry pages, and compares sitemap membership with the observed internal-link graph.
Each dataset row reports whether the URL is in the sitemap, whether the crawl discovered it, its incoming-link count, entry-page status, and a classification such as linked, orphan, sitemap-only, or crawl-only. Supplied graph snapshots remain available for deterministic or offline analysis.
What This Actor Does Not Do
- It does not provide legal, medical, financial, investment, safety, or compliance advice.
- It does not guarantee completeness of any public source or third-party dataset.
- It does not collect sensitive personal data by default.
- It does not rely on unsupported private APIs.
- It does not crawl private pages, bypass access controls, or claim complete coverage beyond the configured caps.
Best Use Cases
- sitemap versus crawl comparison
- internal link graph cleanup
- migration orphan detection
Input Fields Explained
| Field | Type | Default | Notes |
|---|---|---|---|
records | array | built-in records | Supplied graph rows with URL, sitemap membership, discovery state, and incoming-link count. |
urls | array | [] | Same-origin crawl entry pages. |
sitemapUrls | array | [] | XML sitemap or sitemap-index URLs. |
fetchUrls | boolean | false | Enables the sitemap and internal-link crawl path. |
fetchTimeoutMs | integer | 12000 | Timeout per sitemap or page request, capped at 30 seconds. |
maxPages | integer | 10 | Maximum internal pages fetched, capped at 50. |
watchTerms | array | actor defaults | Terms used to mark relevant records and alerts. |
includeReport | boolean | true | Writes JSON and Markdown report artifacts to the key-value store. |
maxItems | integer | 2 | Caps processed records. Maximum is 50. |
maxTextBytes | integer | 500000 | Caps analyzed text per record. |
debug | boolean | false | Enables debug logging. |
Example Input
{"records": [{"sourceId": "linked-page","sourceUrl": "https://example.com/services","title": "Linked service page","description": "Page is present in sitemap and has three incoming internal links.","category": "crawl graph","keywords": [],"metadata": {"url": "https://example.com/services","inSitemap": true,"incomingLinks": 3,"discovered": true}},{"sourceId": "orphan-page","sourceUrl": "https://example.com/old-offer","title": "Sitemap only orphan page","description": "orphan sitemap only page with incomingLinks:0.","category": "crawl graph","keywords": ["orphan","sitemap only"],"metadata": {"url": "https://example.com/old-offer","inSitemap": true,"incomingLinks": 0,"discovered": false}}],"includeReport": true,"maxItems": 2}
Output Fields Explained
| Field | Meaning |
|---|---|
auditId | Stable hash for the checked record. |
sourceId, sourceUrl | Source identifiers for traceability. |
status, severity, score | Normalized outcome and 0-100 quality/risk score. |
matchedKeywords | Watch terms found in the record text or metadata. |
issues, issueCodes | Actor-specific findings with severity and messages. |
recommendations | Next actions for the operator or content/data owner. |
metadata | Original metadata plus derived helper fields when applicable. |
pricingTemplate, pricingEventName | PPE tier and primary billed event. |
Example Output
{"auditId": "orphanp_62ad01ebca374c1d","actorSlug": "orphan-page-finder","actorName": "Orphan Page Finder","sourceType": "input","sourceId": "linked-page","sourceUrl": "https://example.com/services","title": "Linked service page","status": "pass","severity": "none","score": 100,"matchedKeywords": [],"primaryEntity": null,"category": "crawl graph","publishedAt": null,"summary": "Page is present in sitemap and has three incoming internal links.","issueCount": 0,"issues": [],"issueCodes": [],"recommendations": ["Orphan Page Finder did not find immediate risk signals for this record. Re-run after source data changes."],"metadata": {"url": "https://example.com/services","inSitemap": true,"incomingLinks": 3,"discovered": true,"sourceSpecific": {"orphanRows": [{"url": "https://example.com/services","inSitemap": true,"discovered": true,"incomingLinks": 3,"entryPage": false,"status": "linked","crawlError": null,"sitemapError": null}]},"normalizedTextPreview": "linked-page https://example.com/services Linked service page Page is present in sitemap and has three incoming internal links. crawl graph {\"url\":\"https://example.com/services\",\"inSitemap\":true,\"incomingLinks\":3,\"discovered\":true}"},"textBytes": 232,"checkedAt": "2026-07-02T00:00:00.000Z","pricingTemplate": "W1 — Web/domain audit","pricingEventName": "page-audited"}
Cost-Control Tips
- Keep
maxItemssmall for default and scheduled checks. - Use supplied records or snapshots for deterministic QA runs.
- Leave
fetchUrlsoff unless live source fetching is explicitly needed. - Review warning rows before increasing caps.
- Schedule small frequent runs instead of broad one-off sweeps.
Scheduling Examples
- Daily watchlist check with two to five high-value records.
- Weekly QA run before publishing a site, data, or actor update.
- Post-migration validation of sitemap and internal-link coverage.
Public Task Examples
- Compare a sitemap with a capped crawl of the site home page.
- Find sitemap URLs with no observed incoming links.
- Identify crawl-discovered URLs missing from the sitemap.
- Export a client-ready orphan-page remediation report.
- Monitor a small high-value section after navigation changes.
FAQ
Can I use this with live URLs?
Yes. Supply sitemapUrls, one or more crawl entry urls, and enable fetchUrls. The crawl remains same-origin and bounded by maxPages.
Why does it charge before pushing output?
The actor charges before paid dataset rows. When the run charge cap is reached, it stops cleanly without emitting unpaid rows.
What happens on charge limits?
The actor stops gracefully and writes a summary instead of pushing unpaid result rows.
Is this legal, financial, safety, or compliance advice?
No. The actor produces operational signals and structured data for review. Human owners remain responsible for decisions.
Troubleshooting
- If the dataset is empty, check that
maxItemsis greater than zero and that records are supplied or defaults are enabled. - If a record is flagged unexpectedly, inspect
issueCodes,matchedKeywords, and the normalized metadata preview. - If live fetching fails, rerun with supplied record bodies or snapshots and keep
fetchUrlsfalse.
Limitations
Orphan classification reflects the captured crawl graph, not every possible site path. Pages reachable only through JavaScript, forms, authentication, alternate hosts, or crawl paths beyond maxPages can appear sitemap-only. Entry pages are not marked orphan solely because they have no observed incoming link.
Source And Safety Notes
Use public or permissioned sites and conservative caps. Do not provide private sitemap URLs, credentials, cookies, or sensitive user data.
Changelog
- 2026-07-10: Added sitemap-index loading, capped same-origin crawling, incoming-link graph comparison, honest crawl diagnostics, and expanded regression coverage.