For the past few weeks, I’ve noticed that new Facebook likes weren’t showing up on our site. The funny thing was old pages which had likes previously would increment correctly. New pages would register your like, but not reflect that on the page once you refresh. I did some research online, but only a few people were experiencing the issue and no one really had much clue what was happening.
Obviously it wasn’t affecting everyone or else you’d have tons of websites complaining. I had sent in a bug report as well as contacted my friend who works at Facebook who forwarded my issue to the appropriate department, but I never heard back.
I’m happy to announce that the problem has been fixed. I took some time this weekend to investigate the issue and found out it was related to the open graph changes I made in the middle of November. It turns out that if you include og:tags, the like button behaves differently. When I removed the og:tags from the site, the likes were incrementing correctly and even showing the previous like count.
After a bit of searching I landed on this page: Open Graph Protocol on Facebook. The real useful thing was the Facebook URL Linter, a debug tool to show you what Facebook sees when it parses your website. It turns out I was missing fb:admins or fb:app_id from my meta properties. After adding the app id (which you can register for one here), things started working again.
Another really useful trick I learned was that you can force Facebook to clear its cache and re-parse your page by using the Facebook URL Linter tool. Sometimes Facebook fails to fetch your thumbnail or if you decide to change the title/description, new people liking your page will still get the old data. But if you run your page through that debug tool, it’ll refresh.
Hope this helps anyone else who’s hitting a similar issue!