Thanks for the kind words!
The Shared Counts plugin is not owned or operated by SharedCount.com, but we recommend using that service for the performance reasons you mention.
First, we do not refresh the share data on every pageload. We cache the data (as post meta) and refresh it:
– Every 30 minutes for posts published in the last 24 hours
– Every 6 hours for posts published in the last 5 days
– Every 5 days for posts older than that.
You can customize how often it is updated by filtering this function.
Once we determine a post has “stale” data and needs to be refreshed, we wait until the page is done loading to query the APIs. This ensures the page load for your users isn’t affected.
If you’re using SharedCount.com as the data source, it does one query total for Facebook, Pinterest, and StumbleUpon. If you check “Include Twitter Counts” and/or “Include Yummly Counts”, these are each an additional query (so 3 total if all checked).
If you check “Preserve HTTP Count” this doubles the query count since it’s duplicating those queries for the http version of the URL. So checking this will bring the total query count to 2-6 depending on whether you’re retrieving twitter and yummly counts. Of those queries, only 1 or 2 will be to SharedCount.com so count towards your API limit.
You can use a filter to limit the HTTP lookup for posts older than a certain date (when you switched to HTTPS) so you aren’t doubling the queries for newer content.
With the caching in place, almost every website should be able to use the free account at SharedCount. You would need about 50,000 posts to hit the API limit.
When you first sign up for SharedCount.com they give you 1,000 queries/day. If you connect your Facebook account, they bump it to 10,000 queries/day.
Let me know if there’s anything else I can help with.