Scores
The Siftsy Score is a 1–10 temperature check for a comment section: how people reacted to the content. It is not a like count and not a generic “positive or negative” label. It blends three independent readings, each scored by context-aware AI on the same 1–10 scale:
- Sentiment — how commenters feel about the post and the subjects it discusses
- Relevance — how on-topic the conversation actually is
- Consensus — how commenters are reacting to each other
Sentiment carries the most weight. Relevance and Consensus keep a high score honest: a cheerful but off-topic thread, or a pile-on fight, should not read as a clean win.
Every number you get from the Siftsy Analyst API is already stored. The endpoints never rescore. Read GET /team → analysisSettings.scoreVersion (and engagementWeight) so you interpret the rollup the same way the dashboard does.
Consensus is not agreement with the post. Sentiment (and Content / Topic) is how commenters feel about the post, creator, or subject. Consensus is how they treat other commenters. A thread can be uniformly negative toward the post and still have high consensus.
Content vs. topic
A single sentiment number collapses two different stories: “I don’t agree with this video” and “I hate this subject.” On score version 2 and 3, Sentiment splits into two readings on every comment, then averages them 50/50 into overall sentiment:
The average is compatible with older versions. The split is the diagnosis.
A high Content score with a low Topic score means the audience is with the creator and against the subject — the execution worked; the message or the thing being discussed did not. The reverse means the subject resonates and the post is what is missing. Own-social teams usually read Content first. PR and crisis teams usually read Topic first. The underlying scores do not change when you switch that lens; only which story you lead with does.
Relevance and consensus
These are supporting measures, not a second sentiment score.
Relevance is whether the comment is actually about the post, the creator, or what the post is talking about. High is a specific, on-topic reply. Low is spam, solicitation, or a comment that could sit under anything. A relevant criticism still scores high on Relevance.
Consensus is commenter-to-commenter. High is agreeing with or echoing other comments. Low is arguing with them — debate, contradiction, fighting. Never treat “agrees with the post” as high Consensus or “disagrees with the post” as low Consensus.
How they become a Siftsy Score
Per-comment scores are the same across versions. A version is a different way of rolling those comments up — switching versions on the team recalculates instantly and does not rescore.
Version 3 also hardens the rollup against the ways comment sections mislead an average:
- Negativity cap. If a meaningful share of comments are very negative (below 3), the score’s ceiling drops. A section that is about 12% very negative can score at most 8.5. A loud positive majority cannot paper over a hostile contingent.
- Engagement weighting. Comments with more likes and replies count more on a curve: every comment keeps at least 1× weight and the most-engaged comment counts up to 5×. That multiplier applies to the sentiment readings only. Relevance and Consensus describe the comments themselves, so likes do not scale them.
- Reply hierarchy. Top-level comments carry full weight. Replies share a capped pool, so a long argument under one comment does not outweigh the rest of the thread.
scores.siftsyScore is that rollup. scores.sentiment, content, topic, relevance, and consensus are the components.
Mix buckets
GET /posts/{postId}/metrics (and the mix object on an analysis) returns five-bucket percentages for each dimension. The JSON keys are the same; the dashboard labels change with the score.
neutralPercent is typically unused for Relevance and Consensus. Filter comments with the dashboard labels or the JSON keys — both work. See Retrieving comments.
Numeric cutoffs
These are the mix-bar ranges. A comment in a bucket is the same comment counted in that bar on GET /posts/{postId}/metrics and GET /posts/{postId}/analysis, and the same comment that can appear in a comments sample filtered by ?sentiment=… (or content, topic, relevance, consensus).
Metrics are materialized. You get 404 with metrics_not_available until scoring has finished.