{
  "$comment": "§New-2 Stage-2 extraction artifact for Rytr. This file is the evidence behind every Rytr number rendered anywhere on 0saas. If a field's confidence is not 'verified', the UI must render a link to the source, never a number.",
  "incumbent": "Rytr",
  "source_url": "https://rytr.me/pricing",
  "fetched_at": "2026-10-26",
  "extraction_method": "fetch official pricing page in-session (2026-10-26), extract plan cards + comparison table to strict JSON (no training-data recall)",
  "currency": "USD",
  "price_view_captured": "Free and Lite cards with the monthly character ceiling, use-case count and the unlimited Lite allowance.",
  "plans": [
    {
      "name": "Free",
      "price": "US$0",
      "price_period": "per month",
      "highlights": [
        "10,000 characters/mo",
        "40+ use cases",
        "30+ languages"
      ],
      "confidence": "verified"
    },
    {
      "name": "Lite",
      "price": "US$9",
      "price_period": "per month",
      "highlights": [
        "Unlimited characters",
        "Same use cases",
        "More generation slots"
      ],
      "confidence": "verified"
    },
    {
      "name": "Higher tiers",
      "price": null,
      "price_period": "see source",
      "highlights": [
        "Team seats",
        "Dedicated support",
        "Brand voices"
      ],
      "confidence": "unconfirmed"
    }
  ],
  "free_tier_ceiling_for_displacement_brief": {
    "claim": "10,000 characters a month is a real budget; a brief with per-section allocations keeps the campaign inside it with headroom for rewrites.",
    "confidence": "verified",
    "period_caveat": null
  },
  "field_confidence": {
    "free_tier_limit": "verified",
    "paid_tier_price": "verified",
    "per_feature_checkmarks": "unconfirmed"
  },
  "receipts": [],
  "next_check_due": "2026-11-25"
}
