Rox.com SEO Teardown: An unfinished migration?

Written by Shubham • 7 min read
Rox.com SEO crawl analysis showing broken CTA links, crawlable 404s, orphaned articles, and internal linking health

Crawl data as of November 3, 2026. Analysis powered by redCacti.


What is Rox.com?

Rox is a revenue agent platform built for the Global 2000. Its agents generate pipeline, qualify leads, manage deals, and run account expansions on autopilot.

We were revisiting our earlier teardown of Persana.ai which we completed in February 2026 and noticed that Persana is now part of Rox.com. Hence, it made sense to review Rox.com instead of Persana.

Why are we doing this?

Rox is an established product with a genuinely strong content engine. Through this exercise, we are trying to identify elements that could impact its search presence and help other practitioners learn what typically goes wrong after a site migration and how to avoid it.

We are happy to share detailed reports with them.

Our methodology

Using redCacti’s inhouse spiders, we crawled Rox’s website on November 3, 2026. We replicate a search engine crawler’s behavior on any site and use baked-in mechanisms that do not burden the site’s resources. This includes limiting crawls to less than 3 pages a second, exponential backoffs among others.

Findings

We crawled 696 pages, with 587 live pages returned as 200. The on-page fundamentals are in good shape: every live page carries a meta description, a canonical, OpenGraph metadata, and structured data. The problems are almost entirely structural, and most of them trace back to one site reorganization that moved content and an unfinished cleanup.

109 dead URLs are crawlable, and 73 of them look like a rename without redirects.

73 root-level paths return 404, paths like /data-hygiene and /what-is-deal-scoring. These are old article slugs that lost their /articles/ prefix when the content was reorganized, and the live pages exist at the new URLs. The problem is that 314 internal references still point at the old ones. This is the classic lost-equity pattern: the content survived the move, but the redirect was never added, so every internal link into it now lands on a 404. Several of these dead roots sit on money pages too, /ai-sdr-vs-human-sdr 404s at the root while /articles/ai-sdr-vs-human-sdr returns 200. The crawl confirmed these are live rendered hrefs on today’s pages, not stale artifacts. A 301 map from each old slug to its live successor is a few hours of work and recovers all of that equity.

151 of the 170 orphans are articles, and they are not filler. The median long-form article on Rox runs around 2,400 words. But the orphan list also includes pages that should be impossible to orphan: /reports/gartner, /platform/account-intelligence, /contact/success, and a set of partner microsites like /partners/rox-leadiq and /rox-for-cios. A Gartner report page that is linked to nothing is invisible in-site, and a partner page with no inbound links is an internal-linking failure. The blog’s long tail exists on the strength of the /articles index listing alone; the median live page receives just 2 incoming links. Remove the index and the whole library goes dark.

The same article exists at two, sometimes three, URLs.

Three duplicate clusters showed up. “Build vs. buy is the wrong question” lives at both a unicode-quote slug and a clean slug, 2,412 words each, with one copy orphaned. “Building Rox’s System of Record for Contact Data” has three near-identical slugs differing only in how the apostrophe was encoded. And /articles/crm-for-saas overlaps almost entirely with /articles/best-crm-for-saas-companies, 2,440 versus 2,441 words. Each cluster needs one canonical version and a 301 for the rest, otherwise Google picks a winner and the losing copies dilute the cluster.

18 orphaned articles share one placeholder meta description.

The generic OpenGraph description, “Revenue agents that generate pipeline, manage deals and run expansions on autopilot”, appears as the actual meta description on 18 or more orphaned articles. An orphaned article with a placeholder description is the exact footprint of programmatically generated content that never got finished, and it is how a search engine reads it too. Each of those articles needs its own description written.

87% of pages are missing alt text on at least a quarter of their images.

513 of 587 live pages sit under 75% alt coverage, and most articles land at 43% or 57%. The homepage is the worst single page on the site: 15 of its 21 images have no alt text at 28.6% coverage. Missing alt text weakens accessibility, on-page SEO, and image search eligibility sitewide. Most of the article gap is a repeated image stack, so a bulk pass in the CMS recovers most of it quickly.

Raw template placeholders leaked into the crawl as real URLs.

/articles/:Lv5uwr1Ge and /customers/:zz1x7zfYA return 404 because they are Framer or Next.js route parameters that got rendered as literal URLs, and 6 internal references point at them. Either the index pages are emitting unresolved param placeholders as crawlable hrefs, or the sitemap or feed contains raw template strings. It is a small count but a templating bug worth catching early, because it means somewhere the template is generating hrefs without checking them.

Cited third-party sources are rotting.

19 external URLs are broken, including five Salesforce blog links, two monday.com links, four references to a moved Google support page, and a dri.nic.in link that looks like a copy-paste slip in a sales article. Some of these are cited as evidence inside thought-leadership posts. A revenue intelligence company whose articles cite dead sources takes a credibility hit with readers and with E-E-A-T evaluation. Each one needs a re-cite or a removal.

How the site is strong

The fundamentals are mostly right. Every live page has a meta description, a canonical, OpenGraph and Twitter cards, and structured data, with consistent Article schema on the blog and SoftwareApplication plus WebSite sitewide. The content engine is deep, with 20+ comparison hubs and genuinely long-form coverage. None of the problems live in the pages themselves. They live in how the pages were moved and connected. It is the kind of damage that is invisible to a page-by-page review and only shows up at crawl level.

Learnings

The lesson from Rox is that migrations fail at the end, not the middle. The content moved, the slugs changed, and then nobody ran a crawl to confirm the wiring. Every major finding here, the 73 unredirected old slugs, the duplicate apostrophe slugs, the orphaned strategic pages, is leftover drift from one unfinished reorganization.

The fix order we would run: first, 301 the 73 root-level old slugs to their live /articles/ successors, since that single map recovers 314 links worth of equity. Second, pick canonicals and redirect the four duplicate article clusters. Third, fix the templated hrefs and add the Gartner, partner, and capability pages to the nav or sitemap so nothing strategic stays orphaned. Then the cleanup passes: unique meta descriptions for the 18 placeholder articles, alt text starting with the homepage, and re-citing the dead external sources.

If you are running a site like this one, and most product sites are, the same issues probably live in your crawl too, especially if you have ever rebranded or reorganized your content. Run a free crawl using redcacti.com and see your broken links, thin pages, and template mistakes in the same detail.


Liked this article? Forward to people who could benefit from it.

Newsletter

Weekly SEO teardowns

Internal linking, broken links & orphan pages - straight to your inbox, every week.

Subscribe free

Written by

Shubham

Founder of redCacti

Founder of redCacti. He works on the product, website analysis workflows, internal linking recommendations, and content about crawlability, broken links, orphan pages, and technical SEO.

Read the author profile

Related Posts