Calculate your social media engagement rate using standard analytics formulas.
Enter Total Followers for standard rate, or Reach for Reach-based rate.
Leave as 1 for a single post calculation.
Calculated Engagement Rate
0.00%
How Does Hootsuite Calculate Engagement Rate?
Understanding your social media performance goes beyond just counting likes. The Engagement Rate is a critical metric used by analytics platforms like Hootsuite to measure how actively involved your audience is with your content relative to your reach or audience size.
The Core Formula
While Hootsuite offers various ways to slice the data, the fundamental formula for calculating the engagement rate of a post is:
Formula:(Total Engagements / Total Audience) × 100
Where:
Total Engagements: The sum of all interactions on a post. This includes Likes, Comments, Shares, Saves, Retweets, and often Clicks (depending on the specific social network).
Total Audience: This is typically your Follower Count at the time of the post. However, Hootsuite also allows you to calculate "Engagement Rate by Reach," where the denominator is the number of unique people who saw the post.
Calculating Average Engagement Rate
If you are analyzing a reporting period (e.g., "Last 30 Days") rather than a single post, Hootsuite calculates the Average Engagement Rate. The calculator above handles this by allowing you to input the number of posts.
The logic follows this sequence:
Sum all engagements across all posts in the period.
Divide by the number of posts to get the Average Engagements per Post.
Divide that average by the Total Audience (Followers).
Multiply by 100 to get the percentage.
What Metrics Count as Engagements?
Different platforms define "engagement" differently. When using Hootsuite reports, the following are generally summed up:
A high follower count with a low engagement rate often indicates "ghost followers" or content that isn't resonating. A smaller account with a high engagement rate (typically above 1% to 3% depending on the industry) signals a loyal and active community, which algorithms favor for organic reach.
function calculateHootsuiteRate() {
// 1. Get input values
var likes = document.getElementById('hs_likes').value;
var comments = document.getElementById('hs_comments').value;
var shares = document.getElementById('hs_shares').value;
var clicks = document.getElementById('hs_clicks').value;
var audience = document.getElementById('hs_audience').value;
var posts = document.getElementById('hs_posts').value;
// 2. Parse values to floats, default to 0 if empty
var valLikes = parseFloat(likes) || 0;
var valComments = parseFloat(comments) || 0;
var valShares = parseFloat(shares) || 0;
var valClicks = parseFloat(clicks) || 0;
var valAudience = parseFloat(audience);
var valPosts = parseFloat(posts) || 1;
// 3. Validation
if (isNaN(valAudience) || valAudience <= 0) {
alert("Please enter a valid Total Audience number greater than 0.");
return;
}
if (valPosts < 1) {
valPosts = 1;
}
// 4. Calculate Total Engagements
var totalEngagements = valLikes + valComments + valShares + valClicks;
// 5. Calculate Average Engagements per Post
// If posts = 1, this is just totalEngagements.
var avgEngagementsPerPost = totalEngagements / valPosts;
// 6. Calculate Engagement Rate
// Formula: (Avg Engagements / Audience) * 100
var engagementRate = (avgEngagementsPerPost / valAudience) * 100;
// 7. Display Results
var resultBox = document.getElementById('hs_result');
var rateDisplay = document.getElementById('hs_final_rate');
var breakdownDisplay = document.getElementById('hs_breakdown_text');
resultBox.style.display = 'block';
rateDisplay.innerHTML = engagementRate.toFixed(3) + '%';
breakdownDisplay.innerHTML =
'Total Engagements: ' + totalEngagements.toLocaleString() + " +
'Average Engagements per Post: ' + avgEngagementsPerPost.toFixed(1) + " +
'Audience Size: ' + valAudience.toLocaleString();
}