Enter the total audience size (Reach, Impressions, or Follower count) for this post.
Post Engagement Rate
0.00%
Total Interactions: 0
function calculateEngagementRate() {
// 1. Get DOM elements
var likesInput = document.getElementById('postLikes');
var commentsInput = document.getElementById('postComments');
var sharesInput = document.getElementById('postShares');
var savesInput = document.getElementById('postSaves');
var baseInput = document.getElementById('baseMetric');
var resultBox = document.getElementById('resultDisplay');
var rateValue = document.getElementById('engagementRateValue');
var interactionsValue = document.getElementById('totalInteractionsValue');
var errorBox = document.getElementById('errorDisplay');
// 2. Parse values (handle empty inputs as 0)
var likes = parseFloat(likesInput.value) || 0;
var comments = parseFloat(commentsInput.value) || 0;
var shares = parseFloat(sharesInput.value) || 0;
var saves = parseFloat(savesInput.value) || 0;
var baseMetric = parseFloat(baseInput.value);
// 3. Reset display states
errorBox.style.display = 'none';
resultBox.style.display = 'none';
// 4. Validation
if (isNaN(baseMetric) || baseMetric <= 0) {
errorBox.innerText = "Please enter a valid number greater than 0 for Reach/Impressions/Followers.";
errorBox.style.display = 'block';
return;
}
if (likes < 0 || comments < 0 || shares < 0 || saves < 0) {
errorBox.innerText = "Interaction numbers cannot be negative.";
errorBox.style.display = 'block';
return;
}
// 5. Calculation Logic
// Formula: ((Likes + Comments + Shares + Saves) / Reach) * 100
var totalInteractions = likes + comments + shares + saves;
var engagementRate = (totalInteractions / baseMetric) * 100;
// 6. Update Result UI
rateValue.innerText = engagementRate.toFixed(2) + "%";
interactionsValue.innerText = "Total Interactions: " + totalInteractions.toLocaleString();
// Color coding based on result
if (engagementRate = 1 && engagementRate < 3.5) {
rateValue.style.color = "#ffc107"; // Yellow/Orange for average
} else {
rateValue.style.color = "#28a745"; // Green for good
}
resultBox.style.display = 'block';
}
How to Calculate Post Engagement Rate
Understanding your social media performance goes beyond looking at vanity metrics like follower count. The Post Engagement Rate is one of the most critical metrics for marketers and influencers because it measures how actively your audience interacts with your content relative to how many people saw it.
Whether you are tracking performance on Instagram, LinkedIn, Facebook, or TikTok, this calculator helps you determine the efficiency of your content strategy.
There are two main ways to calculate engagement rate, and the "Base Metric" input in our calculator allows you to use either:
Engagement Rate by Reach (ERR): This is generally considered the most accurate metric. It divides your total interactions by the number of unique people who actually saw the post (Reach). This tells you how compelling the content was to those who viewed it.
Engagement Rate by Followers (ER): This divides interactions by your total follower count. This is useful for public data analysis where Reach data is hidden, but it can be less accurate because not all followers see every post due to algorithmic filtering.
What Counts as an Interaction?
To get an accurate calculation, you need to sum up all measurable actions a user takes on your post. These typically include:
Likes/Reactions: The most common and lowest-effort form of engagement.
Comments: A high-value metric indicating a user took time to write a response.
Shares/Retweets: Indicates the content was valuable enough to pass along to others.
Saves/Bookmarks: A strong signal to algorithms that the content is worth returning to later.
What is a Good Engagement Rate?
Benchmarks vary significantly by platform and industry, but here are some general guidelines:
Less than 1%: Generally considered low. You may need to revisit your content strategy or posting times.
1% to 3.5%: This is the average range for most accounts. It indicates a healthy relationship with your audience.
3.5% to 6%: High engagement. Your audience is very responsive.
Above 6%: Exceptional engagement. This is often seen in viral posts or very niche micro-influencer communities.
How to Improve Your Engagement Rate
If your calculator results are lower than you'd like, consider these strategies:
Use Call-to-Actions (CTAs): Explicitly ask your audience to comment, save, or share in your caption.
Post at Optimal Times: Analyze your insights to see when your audience is most active.
Engage Back: Reply to comments on your posts immediately to spark a conversation and boost the algorithm.
Quality over Quantity: Focus on creating high-value, shareable content (like carousels or educational reels) rather than just posting to fill a schedule.