Hey.Café Help   ›   Quick Answers   ›   Fresh and Hot feed and how it works

How Fresh & Hot works

We offer a feed type called "Fresh & Hot", and there are a few things to know about how this feed works. This feed is the same for everyone, while respecting blocks and café rules, and content that shows under "New Stuff" may appear here as well.

How we fetch what conversations to show

The feed is actually pretty simple. Here is the query we use to load what you see:

SELECT * FROM conversations WHERE info_draft='0' AND info_score!='0' AND info_safespace<='50' ".$cafeblock." ".$restrictedblock." ORDER BY info_score DESC

Let's break down how this query works. Generally speaking, it fetches all conversation in order by score from highest to lowest. In addition, there are other parameters in place for what conversations are chosen.

  1. The score must be greater than 0.
  2. The SafeSpace score must be under 50 (the default for all accounts).
  3. Conversations from cafés you have blocked will be excluded.
  4. Conversations from cafés that have restrictions will be blocked (for example, some political cafés that have heated conversations). This is one of the biggest reasons why we ask users to use certain cafés for some posts.

How we calculate the score

The score is calculated using the number of comments and reactions, and the score gets smaller for every hour after the item was posted. After 48 hours, the post's score is set to 0. This is what makes the feed "Fresh". All conversations shown in this feed will have been posted within the past 2 days.

Here is the function we use to calculate the score. Each reaction adds 8 points to the score, and every comment adds 40. Then, we take away 1/48th of the score every hour until 48 hours have passed. After 48 hours, the score is 0.

$reactions=conversation_get_count_reactions($row["info_table"],$row["id"]);
$comments=conversation_get_count_comments($row["id"]);

$score=$score+($reactions*8);
$score=$score+($comments*40);

//--Older the content the lower the weight
$timdif=round(($system_api_timestamp_unix-convert_timeunix($row["date_created"]))/3600); //--Value will be how many hours old
if ($timdif>=48){
    $score=0;
}else{
    //--Remove 1/48th the score for every hour passed (Slow fade away)
    $score=round($score-(($score/48)*$timdif));
}

No AI, and no ranking based on your account

This simple calculation means that we do not use any information from your account to calculate what you see, and everyone sees the same content. We have this feed because as we grow and have lots of new posts, everyone can see what new content is being talked about wherever the conversations are happening.