Building Safer Communities

We conceptualize and develop accessible solutions to mitigate online harms

In partnership with

Isolate Hate, Harassment and Abuse

Machine Learning + Real Community Data = Actionable Insight at Scale

We've analyzed 0 commentssince you opened this page

Tackling the Content Issue

Empowering blogs, forums, and online communities by automatically flagging harmful content, reducing moderator workload, and improving community safety.

99% reduction in time offensive content is online
98% accuracy in flagging hateful comments
2.2s moderation time saved per comment
Case Study: Reducing community toxicity by 92%Our contextual, AI-powered systems reduce community toxicity in some of the largest communities online by 92%, saving hundreds of hours, and costing exactly $0
Read More →
We've got a problem to solve.
130M Americans experience some form of online abuse
3xMore likely to target already at-risk LGBT teens
60% of women experienced panic attacks or stress after online incidents
11.5xIncrease in suicidal thoughts in adolescents
< 18% Say online platforms effectively curb harassment
14/15 Abusive comments never get reported by users
> 6 hrs Average time hateful content is online

See How It Works

We implement state of the art machine learning models trained on hundreds of thousands of comments to accurately filter out toxic content.

Integration
              curl -X POST "https://api.moderatehatespeech.com/api/v1/moderate/" \
  -d '{"token":"YOUR_API_TOKEN_HERE","text":"TEXT_CONTENT_HERE"}'
              
              <?php

/**
 * Checks each submitted comment against ModerateHatespeech's API, and detects flagged comments with a confidence threshold over $CONF_THRESHOLD
 *
 * @author  ModerateHatespeech.com
 * @since 1.0
 * @param int    $id  ID of the inserted comment
 * @param WP_Comment $comment WP_Comment object of inserted comment.
 */
function hs_check_comment($id, $comment) {

    $CONF_THRESHOLD = 0.9; // the minimum confidence threshold to take action. values betwee 0.5 and 1

    $args = array(
        'method'      => 'POST',
        'timeout'     => 10,
        'headers'     => array(
            'Content-Type'  => 'application/json',
        ),
        'body'        => json_encode(
            array(
                "token" => "YOUR_API_TOKEN_HERE",
                "text" => $comment->comment_content,
            )
        ),
    );

    $request = wp_remote_post("https://api.moderatehatespeech.com/api/v1/moderate/", $args);

    if (!is_wp_error($request) && wp_remote_retrieve_response_code($request) == 200) {
        $response = json_decode(wp_remote_retrieve_body($request), true);
        if ($response["class"] == "flag" && $response["confidence"] > $CONF_THRESHOLD){
            // do something
            // Eg, wp_delete_comment($comment->comment_ID);
        }
    }
}
add_action('wp_insert_comment', 'hs_check_comment', 10, 2);              
              
              <?php

/**
 * Checks each submitted comment against ModerateHatespeech's API, and detects flagged comments with a confidence threshold over $CONF_THRESHOLD
 *
 * @author  ModerateHatespeech.com
 * @since 1.0
 * @param string    $comment  Text to check
 */
function hs_check_comment($comment) {

  $ch = curl_init("https://api.moderatehatespeech.com/api/v1/moderate/");

  $CONF_THRESHOLD = 0.9; // the minimum confidence threshold to take action. values betwee 0.5 and 1

  $payload = json_encode(
    array(
        "token" => "YOUR_API_TOKEN_HERE",
        "text" => $comment,
    )
  );

  curl_setopt( $ch, CURLOPT_POSTFIELDS, $payload );
  curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
  curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
  $result = curl_exec($ch);
  curl_close($ch);
  $response = json_decode($result, true);

  if ($response["class"] == "flag" && $response["confidence"] > $CONF_THRESHOLD){
    // do something
    // Eg, log comment
    return true;
  }

  return false;
}
              
              import requests
                
def hs_check_comment(comment):

  CONF_THRESHOLD = 0.9

  data = {
    "token": "YOUR_API_TOKEN_HERE",
    "text": comment
  }

  response = requests.post("https://api.moderatehatespeech.com/api/v1/moderate/", json=data).json()

  if response["class"] == "flag" and float(response["confidence"]) > CONF_THRESHOLD:
    # Do something
    return True
  
  return False
            
Or use a pre-made integration: