Ranket includes a private backlink exchange where eligible brands trade contextually-relevant links inside generated articles. Unlike generic link-builder spam, every placement is matched by semantic similarity, capped by per-pair limits, and verified weekly.
What it is
When two brands in adjacent niches both publish on Ranket:
Brand A writes an article about "real estate photography tips"
Brand B writes an article about "virtual home staging"
↓
The matcher notices Brand A's article topic is semantically
close to Brand B's product offering, and vice versa.
↓
Brand A's article gets a contextual link to Brand B's feature page
Brand B's article gets a contextual link to Brand A's feature page
↓
Both placements verified weekly to ensure they stayed live.
You give a link, you get a link. The matcher prevents trivially-paired exchanges (no 1:1 reciprocal A→B + B→A on the same article — at least one of the directions is delayed).
Eligibility
To receive links from the exchange, your brand must meet:
- 5+ published articles — fresh brands aren’t yet useful as link sources
- 30+ days old — prevents fresh domains from being used as link farms
- Active subscription — paused brands don’t participate
Brands below these thresholds can still give links from their own articles (so newly-onboarded brands aren’t permanently excluded), but won’t be selected as link targets until they cross both thresholds.
You can opt out entirely in brand settings → Backlinks → “Don’t participate in exchange”.
How matching works
Every brand page (the brand’s own scraped pages) gets registered as a potential target offer when a brand reaches eligibility. Each offer has:
- A topic vector (OpenAI text-embedding-3-small embedding of the page’s content)
- The target URL (the page itself)
- Anchor variants (3-5 phrasings the matcher can choose between)
- A quality score (DR-derived, between 0-100)
When an article is being generated, the assembler:
- Embeds the article’s topic (title + primary keyword + first 600 chars of body)
- Queries the offer graph via pgvector cosine similarity
- Filters by:
- Cosine ≥ 0.4 — semantic relevance threshold
- Source brand DR ≤ target brand DR + 20 — no parasitic high-DR-to-low-DR mismatches
- Brand’s
min_source_dr_normalizedsetting — you can require incoming links to be from brands of at least X DR
- Picks up to 2 placements per article (max, often 0-1)
The matcher prefers high-cosine matches but applies a random skip rate so the same two brands don’t always exchange links in obvious patterns.
Per-pair caps
To prevent the network from looking like a link wheel:
PER_PAIR_CAP 20 total links between any two brands over all time
PER_TARGET_PER_SOURCE_CAP 5 links from any one source brand to a given target page
EXACT_ANCHOR_RATIO_CAP 0.3 maximum fraction of links using exact-keyword anchors
EXACT_ANCHOR_WINDOW 10 recent placements scanned for the exact-anchor check
RANDOM_SKIP_RATE 0.15 fraction of matched placements deliberately dropped
DEFAULT_MAX_INSERTIONS 2 per article
The exact-anchor cap is important: if 30% of placements use the keyword anchor verbatim, Google’s spam classifier notices. Real organic links are anchored loosely — “this guide”, “the [brand name] team”, “see also” — and the matcher enforces this distribution.
Anchor variants
When a brand registers their pages as offers, Claude generates 3-5 anchor variants per offer:
Target page: https://bright-shot.com/features/virtual-staging/
Generated anchor variants:
• "virtual staging software"
• "AI-powered virtual staging"
• "BrightShot's virtual staging tool"
• "this virtual staging guide"
• "their virtual staging product"
When a placement is made, the matcher picks the variant that best fits the surrounding sentence grammatically. The exact-keyword anchor is used max ~30% of the time (per the cap above) — most placements use softer anchors.
Where the link goes in the article
The backlinks stage runs after polish, before assemble. Claude inserts each chosen link into a relevant section by:
- Finding a sentence in the article that’s semantically close to the target offer’s topic
- Re-writing the sentence to include the anchor naturally
- Linking the anchor to the target URL
The result reads like a normal contextual mention — not a “see also” footer block. If no good insertion point exists in any paragraph, the placement is skipped (better to under-deliver than ruin the prose).
Weekly verification
Every Monday at 04:00 UTC, the verification cron:
- Fetches each
placedplacement frombacklink_placements - HTTP-fetches the source article URL
- Checks if the anchor + target URL pair still exists in the HTML
- Checks the link’s
relattribute fornofollow/ugc/sponsored - Updates status to one of:
verified— still live, no nofollownofollowed— live but rel-blocked (loses SEO value)broken— anchor or URL missingremoved— entire article gone
Brands whose articles routinely show nofollowed or broken get their offers paused. Repeat offenders get expelled from the exchange.
What you give vs what you get
Per article (steady state, eligible brand):
Outbound placements 0-2 (links inserted in YOUR articles → other brands)
Inbound placements 0-2 (links in OTHER brands' articles → your pages)
Per month (30 articles/mo, eligible brand):
Outbound ~40 links across your articles
Inbound ~20-50 links pointing to your pages from other brands
Inbound count varies because it depends on how many other brands in your niche are publishing on Ranket. Saturated niches (e.g. SaaS marketing) have more incoming volume. Niche markets (e.g. luxury yacht insurance) have less.
What kind of pages get linked
Targets are typically:
- Feature / product pages — the most valuable for SEO and conversion
- High-intent guide pages — buyer-aware content
- Pricing / comparison pages — relevant for “X alternatives” articles
Targets are not typically:
- Blog homepage / index
- Blog posts (Google considers blog-to-blog links less valuable than blog-to-product)
- Sign-up / login pages
The auto-registration heuristic (during brand scrape) prefers product / feature / pricing / docs pages.
Cost
Per article that gets a backlink insertion:
Embedding the article topic $0.0001
Claude Sonnet anchor placement call $0.02
──────
~$0.02
Per brand per month:
Verification cron (30 placements × ~5KB fetch each) $0 (CDN-cached, negligible)
Roughly $0.02-0.04 in additional COGS per article. Already included in the plan pricing.
Configuration
In brand settings → Backlinks:
- Participate — toggle the entire exchange on/off
- Minimum source DR (normalised 0-100) — only accept inbound links from brands of at least this authority. Default: 0 (no minimum). Increase if you want to filter out fresh-domain inbound.
- Allowed target pages — by default, all eligible pages. You can manually blocklist specific URLs you don’t want as backlink destinations.
Limits
- Maximum 2 inserted links per article
- Maximum 20 links between any two brands over the brand pair’s lifetime
- Maximum 30% of placements using the exact-keyword anchor (rolling window of 10)
- 15% random skip rate (deliberate variance for pattern obscurity)
- Brands below 5 articles / 30 days can give but not receive
Migration / opt-out
If you turn off participation:
- Already-placed links in YOUR articles stay live (you’d have to manually remove them — they’re embedded in the article markdown that was already shipped to your CMS)
- Already-placed links pointing TO your pages stay live in OTHER brands’ articles
- New articles generated under your brand get zero backlink insertions
- New articles from other brands won’t link to your pages
The exchange is a network effect — you only get inbound by participating outbound. We don’t enforce “you must give to get” within a single article (sometimes a brand will only give for several weeks before getting their first inbound), but the long-run exchange is reciprocal at the brand level.
When it works best
Best returns from the exchange come when:
- Your niche has 5+ other brands on Ranket (matching pool is dense)
- You publish daily (max inbound surface area)
- Your DR is in the 20-50 range (you’ll match with peers; you won’t dominate or get dominated)
For brands in saturated B2B SaaS niches with strong publishing cadence, the exchange typically adds 20-50 contextual backlinks per month at zero additional cost.