Google Reader Loves Your Content So Much It Just Doesn’t Want to Let Go
Sometimes when you delete a post, it doesn’t go away- Google Reader keeps it around. And with up to 65% of your readership using Google Reader directly or indirectly (many standalone readers sync with Google Reader, including NetNewsWire on Mac and Pulse and Reeder on iPad) this can be a real problem.
Most people publish something accidentally at one time or another. In my case, this happened when trying a new approach to managing my blogs- I tried keeping all my drafts “in the cloud” by publishing as Drafts to my WordPress blog, and changing to Published when ready to publish. I don’t do this anymore.
So you publish something accidentally, and then to your horror notice it a while later and quickly move it to a draft state. Getting back to your normal life, you later visit your RSS reader and notice the post is still there. Confused, you delete the post to put an end to this madness, only it doesn’t end. It’s still there, the wayward post from hell.
RSS Heaven for Lost Posts
What the bleep is going on?
It’s pretty simple, actually. Feeds are one-way publishing, like magazines in the mail. There is no delete command, real or implied. When something disappears from your feed, RSS readers just assume you aren’t talking about that content anymore, but that it’s still there.
Google Reader is smart and efficient – it caches and shares your feed for everyone so as not to waste space. However, as a result, your wayward post is now cached and is everywhere for evermore. And since Google Reader dominates RSS readers (either directly or by other RSS readers syncing with it), this is a problem. 65% of your readers are sharing this one copy of your feed, making Google Reader the afterlife for your deleted posts. Even new subscribers using Google Reader are picking your polterpost.
So now what?
How to Effectively Delete a Blog Post
If you catch the errant post quickly, before anyone has pulled it into or synced it with Google Reader, you may not be too late. If you have already done what I did and deleted your post, you’ll find extra steps near the end of this article after you read the next section.
If you think you’ve accidentally posted something, don’t look through Readers. You may be the first person looking, causing yourself the grief you want to avoid. Instead, do the following as fast as possible, and possibly stop the post from making it into the Google Reader cache:
- Put the post into draft mode.
- Force Feedburner (if you don’t use Feedburner, just ensure your feed isn’t showing the post- that’s all this activity is doing) to rebuild your feed (via Feedburner’s Troubleshootize tabs ping or resync).
- Ensure your post isn’t in your feed by looking at your Feedburner feed on Feedburner’s website (or viewing your feed XML). Don’t use any RSS Readers yet- they may synch with Google Reader, or they may have their own cache. Feedburner feeds are easy to view via HTML. For regular XML feeds, you could use a Reader that is guaranteed not to cache (or you haven’t used it yet) or sync with Google Reader.
- Finally, check Google Reader listing to see of it appeared there. If not, great! You caught it time. However, if it’s there still you need to move on to the next set of instructions below.
I Was Too Late! Google Reader Has My Post in Purgatory
Your errant post got to Google Reader before you caught it. Now what? You’ll have accept the post will remain in Google reader, but all is not lost. You can still change the post, because Google Reader syncs posts based on a universal id (called a GUID- Globally Unique IDentifier).
- Change the post- scrub the content so it doesn’t stand out. Put a simple title, simple content, and backdate the post so it appears way back in your feed. If you can quickly write something, do that. I chose not to because I don’t like rushing content.
- Republish your post (i.e. change from Draft to Published) to push out the scrubbed post.
- Rebuild your Feedburner feed to include your newly published scrubbed post.
- Refresh Google Reader to pick up the new feed and make sure it’s showing the updated post in the further back position.
- Now- if your scrubbed post is just a placeholder to placate Google Reader, unpublish and rebuild your Feedburner feed to not include it. Now other services using your feed won’t pick it up. However if you managed to tuck some useful content in the post, leave it as it. But realize that it’s back-dated and not as likely to be noticed.
Note that when publishing, deleting and changing entries, Feedburner will not update instantly but rather at it’s regular 30 minute interval. To force a quick Feedburner update visit Feedburner’s Troubleshootize tab and use the Ping or Resync (noted as the nuclear option) to force a quicker update.
But I Did What You Did and Deleted the Post
An what if you’ve already deleted the post? Recreating a new one with the same name won’t work- all of the synchronization is based on the GUID- the unique id generated per post. FeedBurner and Google Reader both rely on the post GUID.
What you need to do is create a new post, make it look the way you want (the scrubbed version or your new content), save it as a draft to WordPress, and then change the GUID to match the one of your deleted post.
Where to get the GUID? Google Reader! It’s based on the post URL and post id so it’s pretty easy to manage.
How to change the GUID on your new post? It has its own GUID (based on url and it’s newly generated post id ) so you will look for that and put in your old one dug up from Google Reader. In my case I kept the same title so all I needed to do was change the new post id to the cached post id in a few places (the post_id and GUID fields).
Here is the scary bit- to do this I had to find the new post I created in the WordPress database and change the post_id and GUID references to the deleted one stuck in Google Reader. While this sounds scary, it’s not too bad as these things go. WordPress has a nice clean, simple database structure, and the GUID is based on urls and post ids.
Once you have got a post with your original GUID in place, go back to “How to Effectively Delete a Blog Post” above and follow those steps to republish it into your feed- you are essentially at the point where you would have been if you had not deleted the post.
If you read this and are swearing at me for not leaving more details, leave a comment and I’ll post clearer steps. Who knows? Maybe there is a nice WordPress plugin that does this- I never thought to look until just now.


{ 7 comments… read them below or add one }
Thank you, this would be really handy !!
Thanks Madhu. It struck me as something good to be forewarned about, so I blogged about it even though technically it’s not in the scope of my blog.
This is by far the best post I’ve found about how to deal with this problem. However, I’m having a lot of trouble finding the GUID for my old, deleted posts. How, exactly, might I determine the GUID that Google Reader is using to identify each post? These posts are old and no longer exist even as auto-revisions in my WP database. I need to re-create them, then insert the matching GUID as you describe. But I cannot find the GUID that Google Reader is using for any of them.
Hi Chad,
Thanks for the comment! It was a serious issue for me, just having launched my blog, and I didn’t find any detailed explanations so I figured it was worth documenting.
The GUID is created by your blogging software, and then used by Google Reader. Usually it uses the post_id and the domain name.
So,if I go to Google Reader, find the post, and click through, I get the url:
http://testdrivenmarketing.com/343/how-to-manage-the-coming-content-explosion
which would allow me to reconstruct the GUID.
Looking in my WordPress table, the guid is found in the “guid” field of wp_posts, e.g.
http://testdrivenmarketing.com/?p=343
In the case where it didn’t exist, I created a new post in draft state, manually changed the guid to match, and then published.
If you have Analytics or logs you could also scan there for people who tried to click through from Google Reader.
Unfortunately, this would not work if you don’t have the post_id in your url. I just did a quick look at Google Reader and html, and I’m not sure what to do in that case. I’ll look some more and let you know if I find anything.
Regards,
Nick
Thank you for the additional clarification! I’m still working on this, and haven’t had success.
I did find the post ID numbers for some of my old, deleted posts in Google’s cache for my site. I’ve always used pretty permalinks, so my post ID has never been in the post URL, but I was able to find the post ID by viewing the source of cached post single pages, since I have the ID of each post listed as an ID for the div that contains the post.
It appears to me that Wordpress by default, whether I have pretty permalinks set up or not, issues a GUID for each post in this format: http://website.com/?p=POSTID. Does that sound correct?
If so, I’m able to reconstruct the GUID for some of my deleted posts in my database. However, as soon as I change from Draft to Published status on the new and scrubbed replacement posts, it seems that Google Reader makes note of the date I modified the post, and by default it sorts by that date rather than the publication date I’ve set for the post. Can you think of any way around this?
Also, it seems that even with the new ID that should duplicate the GUID on older posts, Google is listing my replacement posts as new posts instead of replacing the older ones. Now I have a long list of test posts at the top of my feed. Yikes!
I really appreciate any additional help you might offer with this. I’m surprised at the dearth of information about this matter, since I’m sure a lot of other people have ended up with this issue. Hopefully my comments and your replies here will help others in need.
Yes, your GUID looks right. That was the format of mine, even after I put the title in my permalinks.
My success with 2 posts, and other’s discussing this indicate that it should work and replace the prior post. I’ve done minor updates and typo corrections and have seen those publish to Reader as well.
I’m not sure what is different in your case. Are you sure you got the correct post_ids? If not, are there any prior backups of your database that might have them? I run automated weekly backups on my blog database that I can look at if necessary.
I just looked at my WP database again, and noticed a few things.
Make sure the GUIDs match. Wordpress keeps revisions, and maybe you changed the wrong new post you were going to change? From the looks of it, post_type=post as opposed to revision is a simple way to tell.
Also, remember that anything that goes on your site, then goes into your feed, which is then polled by Google Reader. Have a look at the raw feed and double check that it’s showing what you expect. If you that quickly enough you can probably unpublish and refresh your feed before Reader picks it up.
Reading the other comments on the net on this issue I notice some people had issues with their posts appearing at the top of their feed. I did not- I even backdated the post and it moved further into the background of my feed.
However, Google Reader has a “published” and “received” date, and often sorts by received, so that might be the influence.
Final though- different feeds may react differently. I was doing my feeds through Feedburner. Maybe that has an effect?
I hope you have luck sorting this out- I realize how frustrating and painful it is. Send me some links to the feed if you want me to peek at it.
Excellent post. I have not tried it yet, but your hack makes sense with what I know. Also, great writing style, thanks!
{ 1 trackback }