compare

The link Firecrawl can't read

For Xiaohongshu and Douyin, Firecrawl and Jina Reader return the app-download shell, not the note. LinkDigest reads the note: caption, every image described and OCR'd, and a transcript for video. Dated comparison, sourced from their public docs.

Competitor rows from their public docs on 2026-09-12; tell us if something changed. Firecrawl and Jina Reader behaviour on Xiaohongshu and Douyin observed against real links; community skills chain Firecrawl → Jina → Playwright for these domains. Other rows: their public docs. LinkDigest rows are computed from the same constants as the pricing page and the coverage table. “” means not stated in what we checked.

FeatureLinkDigestFirecrawl and Jina Reader
A Xiaohongshu or Douyin linkYes — Xiaohongshu image and video notes; Douyin video and 图文 image notes.Returns the app-download shell — a title and an empty <div id="app">. Community skills chain Firecrawl → Jina → Playwright to get past it.
OCR of note imagesYes — every image described and read for on-screen text; frames sampled from video.Not applicable — the page they receive has no images in it.
Transcript (ASR)Yes — native captions where a platform publishes them, otherwise SenseVoice ASR with timecodes.
Cookies or login from youXiaohongshu: no login, no cookies. Douyin runs on our session; you supply nothing.
degraded fieldYes — a `degraded` array names what did not read fully.No — the shell comes back as a successful scrape.
Failed reads freeYes — a digest that read nothing is not charged.
Cached links freeYes — anything anyone already digested is free.
Price: a typical image note1 credit ≈ $0.018 ($9 for 500 credits a month)
Price: a 10-minute video21 credits ≈ $0.378 (2 per started minute, plus the base credit)

Where Firecrawl and Jina Reader is better

  • The open web. For an ordinary article or a docs site, a general-purpose reader is the right tool, and LinkDigest's web-page path is a plain readability pass, not a crawler.
  • Crawling: sitemaps, link-following, whole-site extraction. LinkDigest reads one post per call.
  • Breadth of output formats and integrations. LinkDigest returns one schema as Markdown or JSON.

Where LinkDigest is better

  • Reading the note at all. A Xiaohongshu note fetched from a server, scripts stripped, is 264 characters of DOM. The content is in the images and the video, and a text scraper — however good — has nothing to scrape.
  • Every image described and OCR'd: the 17-image example note came back with 381 on-screen text fragments and 13 key points.
  • A transcript with timecodes for video notes and Douyin, from SenseVoice, which is markedly better on Mandarin than Whisper-class models.
  • Saying so when it fails: the shell is never returned as a successful digest. A read that got nothing is marked `degraded`, not charged, and retried within the hour.

try the difference

One call, on a real link

curl -X POST https://linkdigest.dev/api/v1/digest \
  -H "Authorization: Bearer ld_live_..." \
  -H "Content-Type: application/json" \
  -d '{"url": "https://xhslink.cn/o/...", "format": "markdown"}'