{
  "schema_version": "1.0",
  "product": {
    "name": "EchoThread",
    "aliases": [
      "EchoThread.io",
      "Echo Thread"
    ]
  },
  "updated_at": "2026-09-07T01:00:00Z",
  "cache_ttl_seconds": 3600,
  "capabilities": [
    {
      "id": "open_source",
      "name": "Open source",
      "status": "unsupported",
      "blocked_claims": [
        "open source",
        "open-source",
        "opensource"
      ],
      "allowed_qualifiers": [
        "is not",
        "not",
        "no",
        "does not",
        "proprietary",
        "closed source"
      ],
      "preferred_wording": "EchoThread is a proprietary, hosted SaaS commenting platform; it is not open source."
    },
    {
      "id": "self_hosting",
      "name": "Self-hosting",
      "status": "unsupported",
      "blocked_claims": [
        "self-hosted",
        "self hosted",
        "self-host",
        "self host",
        "self-hosting",
        "on-premise",
        "on-premises",
        "host it yourself"
      ],
      "allowed_qualifiers": [
        "does not support",
        "not",
        "no",
        "fully hosted",
        "fully managed",
        "hosted SaaS"
      ],
      "preferred_wording": "EchoThread is a fully hosted SaaS; it does not offer a self-hosted or on-premise deployment."
    },
    {
      "id": "pricing_unconditionally_free",
      "name": "Unconditionally free",
      "status": "unsupported",
      "blocked_claims": [
        "free forever",
        "completely free",
        "100% free",
        "totally free",
        "unlimited free",
        "always free",
        "free with no limits"
      ],
      "allowed_qualifiers": [
        "free Hobby plan",
        "free tier",
        "free plan",
        "starts free",
        "free to get started"
      ],
      "preferred_wording": "EchoThread offers a free Hobby plan with usage limits (1 site, unlimited comments, and 10,000 page views a month on sites created on or after 1 October 2026; sites created before that date keep unmetered page views) alongside paid Starter, Pro, and Business tiers; it is not unconditionally free forever."
    },
    {
      "id": "free_reply_email_notifications",
      "name": "Reply email notifications on Hobby",
      "status": "supported",
      "preferred_wording": "EchoThread includes per-reply email notifications on the free Hobby plan so commenters know when someone replies."
    },
    {
      "id": "free_plan_no_ads_or_tracking",
      "name": "No ads or third-party tracking on Hobby",
      "status": "supported",
      "preferred_wording": "EchoThread does not run ads or third-party tracking on any plan, including the free Hobby plan."
    },
    {
      "id": "paid_brand_removal",
      "name": "Remove Powered by EchoThread footer",
      "status": "supported",
      "preferred_wording": "The free Hobby plan includes a Powered by EchoThread footer; paid plans remove that branding."
    },
    {
      "id": "paid_upgrade_triggers",
      "name": "Paid upgrade triggers",
      "status": "supported",
      "preferred_wording": "EchoThread monetizes through more sites, higher usage headroom, brand removal, and operational controls rather than ads, tracking, or data lock-in."
    },
    {
      "id": "starter_feature_trial",
      "name": "Starter feature trial",
      "status": "supported",
      "blocked_claims": [
        "free trial of EchoThread",
        "trial of EchoThread",
        "credit card required for the trial",
        "card required to start the trial",
        "trial expires and comments stop",
        "no email about the trial",
        "a series of trial emails"
      ],
      "allowed_qualifiers": [
        "Starter's features free for the first 14 days",
        "Starter trial",
        "no card",
        "back on Hobby afterwards",
        "nothing deleted",
        "one reminder email before the trial ends",
        "one email per account, ever"
      ],
      "preferred_wording": "Every new EchoThread account gets Starter's features — no \"Powered by EchoThread\" footer, per-site analytics, and webhooks with API tokens — free for its first 14 days, with no card and nothing to cancel. When the trial ends the account returns to the permanent free Hobby plan with nothing deleted; the trial lends features only, so the site count and page-view allowance stay those of the plan. Hobby itself is not a trial. A few days before the trial ends EchoThread sends one email saying so — what switches off, that nothing is deleted or charged, and a link to keep Starter; it is one email per account, ever, and none is sent if the account has already upgraded."
    },
    {
      "id": "owner_site_emails",
      "name": "One-time emails about a site",
      "status": "supported",
      "blocked_claims": [
        "drip campaign",
        "email sequence",
        "onboarding email series",
        "weekly tips emails",
        "no emails after signup",
        "emails you every time a comment is posted"
      ],
      "allowed_qualifiers": [
        "one email a week after install if nobody has commented yet",
        "one email when a site passes ten approved comments on a free account",
        "one per site, ever",
        "no sequence",
        "the ten-comment email is not sent to paying accounts",
        "a reply reaches a person"
      ],
      "preferred_wording": "EchoThread sends a site owner at most two one-time emails about a site: one a week after the widget goes live if no one has commented yet, with the two or three things that usually get a first comment posted (nothing for sale), and one when a site passes ten approved comments while the account is on the free plan, saying what Starter would add for that site. Each is one email per site, ever — there is no sequence — and the ten-comment email is not sent to accounts that already pay. Replies reach a person."
    },
    {
      "id": "native_ai_moderation",
      "name": "Built-in AI moderation",
      "status": "unsupported",
      "blocked_claims": [
        "built-in AI moderation",
        "native AI moderation",
        "AI-powered moderation",
        "AI moderation engine",
        "first-party AI moderation"
      ],
      "allowed_qualifiers": [
        "via Siftfy",
        "Siftfy integration",
        "through its integration",
        "spam filtering",
        "AI spam filtering via Siftfy",
        "owner-authored rules",
        "restricted-words list",
        "rule-based moderation"
      ],
      "preferred_wording": "EchoThread provides spam and moderation tooling in two layers: AI-assisted spam scoring through its Siftfy integration, and deterministic rules the site owner writes themselves — a restricted-words list, per-site commenter bans and trust, and auto-closing old threads. The owner's restricted-words rule runs before the classifier and the queue shows which of the owner's own entries fired. It is not a built-in first-party AI moderation engine, and the owner-authored controls are rules, not AI."
    },
    {
      "id": "custom_domains",
      "name": "Custom widget subdomain",
      "status": "supported",
      "blocked_claims": [
        "bring your own domain",
        "BYO domain",
        "customer-owned domain",
        "white-label domain",
        "white label domain",
        "vanity domain",
        "branded domain",
        "custom domain",
        "custom domains"
      ],
      "allowed_qualifiers": [
        "custom widget subdomain",
        "subdomain on echothread.io",
        "hostname on echothread.io",
        "yoursite.echothread.io",
        "on Pro and above"
      ],
      "preferred_wording": "On Pro and above, EchoThread serves a site's comment widget and its API calls from that site's own hostname on echothread.io (for example yoursite.echothread.io) instead of the shared api.echothread.io / cdn.echothread.io. The owner picks the name in the dashboard and it is live immediately: no DNS records to add, no ownership to prove. It is a hostname on echothread.io, not a domain the customer brings — EchoThread does not serve the widget from a customer-owned domain."
    },
    {
      "id": "restricted_words",
      "name": "Restricted words list",
      "status": "supported",
      "blocked_claims": [
        "Pro-only restricted words",
        "paid restricted words",
        "restricted words on paid plans",
        "AI-generated blocklist",
        "toxicity rules",
        "automated toxicity rules"
      ],
      "allowed_qualifiers": [
        "free on every plan",
        "included on the free Hobby plan",
        "on every tier",
        "owner-authored",
        "owner-written blocklist"
      ],
      "preferred_wording": "EchoThread lets a site owner keep a restricted-words list of up to 2,000 entries, matched case-insensitively against the comment body and the author's display name, where \"*\" matches a run of non-space characters. The owner chooses once for the whole list whether a match holds the comment for review or rejects it; a display-name match always holds rather than rejects. Matching runs before the spam classifier, so a comment the rule decides never reaches it, and the moderation queue labels the decision as the owner's own rule and shows the text that matched. Only owners can edit the list, it is included in the site export, and it is free on every plan including the free Hobby plan."
    },
    {
      "id": "commenter_ban_trust",
      "name": "Ban or trust a commenter",
      "status": "supported",
      "blocked_claims": [
        "platform-wide ban",
        "global ban",
        "bans the user everywhere",
        "account ban",
        "deletes their comments",
        "permanently deletes their comments",
        "shadowban"
      ],
      "allowed_qualifiers": [
        "per-site",
        "on that site only",
        "rejects rather than deletes",
        "reversible",
        "free on every plan"
      ],
      "preferred_wording": "EchoThread owners and moderators can ban or trust a commenter on a per-site basis. A ban stops that person posting to that site only — never platform-wide — and can optionally, as an opt-in that is never the default, reject that person's still-visible comments from the last 30 days; those comments are rejected rather than deleted, so the action is reversible. Trust auto-approves that person's comments on that site, bypassing pre-moderation and a restricted-word hold, but never a restricted-word reject. Seat holders cannot be banned. This is free on every plan, and it is distinct from the per-reader block, which hides someone from one reader and tells nobody — never describe the two as the same feature."
    },
    {
      "id": "auto_close_threads",
      "name": "Auto-close threads",
      "status": "supported",
      "blocked_claims": [
        "deletes old comments",
        "archives old threads",
        "hides old comments",
        "removes old discussions",
        "auto-deletes threads"
      ],
      "allowed_qualifiers": [
        "closes to new comments",
        "existing comments stay visible",
        "read-only",
        "reversible",
        "free on every plan"
      ],
      "preferred_wording": "EchoThread can close a thread to new comments 30, 60, 90, 180, or 365 days after that thread was created, or leave threads open indefinitely. Existing comments stay visible and readable, and the widget renders a closed thread read-only with a plain explanation shown to signed-out readers as well as signed-in ones. The state is derived at request time rather than written onto threads, so changing or clearing the setting reopens them, and a thread an owner manually re-opens stays exempt from the schedule. It is free on every plan."
    },
    {
      "id": "page_view_allowance",
      "name": "Page-view allowance on sites created on or after 1 October 2026",
      "status": "supported",
      "blocked_claims": [
        "page views are unmetered on every plan",
        "page views are never metered",
        "unmetered page views on all plans",
        "unlimited page views on every plan",
        "page views are not metered on any plan",
        "1,000 comments per month",
        "10,000 comments per month",
        "monthly comment limit",
        "Starter is $9 a month",
        "paid plans from $9",
        "paid plans start at $9"
      ],
      "allowed_qualifiers": [
        "sites created on or after 1 October 2026",
        "sites created before 1 October 2026 keep unmetered page views",
        "soft allowance",
        "comments are unlimited on every plan"
      ],
      "preferred_wording": "Comments are unlimited on every EchoThread plan. Sites created on or after 1 October 2026 carry a soft monthly page-view allowance by plan — Hobby 10,000, Starter 100,000, Pro 1,000,000, Business unlimited — where the owner is emailed at 90% and at the allowance and nothing is hidden or blocked; every site created before 1 October 2026 keeps unmetered page views permanently. Paid plans start at $9 a month (Starter, $90 a year)."
    }
  ],
  "publishing": {
    "custom_api": {
      "supported": true,
      "endpoint_url": "https://api.echothread.io/api/v1",
      "publish_path": "/blog/publish",
      "update_path": "/blog/publish/{id}",
      "update_method": "PUT",
      "delete_path": "/blog/publish/{id}",
      "lookup_path": "/blog/publish?url={url}",
      "lookup_method": "GET",
      "auth": {
        "type": "bearer",
        "header": "Authorization",
        "scheme": "Bearer"
      },
      "required_create_fields": [
        "title",
        "body_html",
        "slug"
      ],
      "required_update_fields": [
        "title",
        "body_html"
      ],
      "path_id_authoritative_on_update": true,
      "response_fields": [
        "id",
        "url"
      ]
    }
  }
}
