Feedly Was Stealing Your Content — Here’s the Story, And Their Code

Last week, Feedly rolled out a controversial new “feature” – hijacking feed links to steal traffic from millions of bloggers.

Redirecting shared links with Feedly to Feedly’s own view of the article instead of the article itself on the original site is a concern for original content creators on many blogs. It not only results in loss of traffic, but is also deceptive for those who follow a particular blog.

Here’s the full story of why people are angry, and how one blogger helped to right the situation. I also delve into their source code to show you just how dirty their little tricks are.

Credit due: The Digital Reader was the original source for this news — I just decided to investigate a little further and see exactly what they were up to.

First, The Good News

At the time of writing, the behaviour has been somewhat corrected so that shortened Feedly links are indeed being sent to the originators site, but a quick examination of the HTTP status code revealed that the redirect wasn’t being done in the typical server level way with a 301 or 302 redirect (200, which Feedly is sending, means “yep, we’ve got that page, hold on”; 404 means “not found”; 301 means “permanently redirecting to another URL; while 302 means “temporary redirection”).

This meant the redirection was being performed in JavaScript, so I wanted to know more. Using a command line webpage fetching tool called curl, I was able to grab the source code of a sample Feedly link to Techmeme.com before the redirection occurred (since CURL won’t execute JavaScript) — and it revealed some surprising tidbits. Here’s what I found.

(I’ve’ve uploaded the full source here if you’d like to take a look — I’m only featuring some interesting snippets below) 

Some people were worried about the SEO implications of basically having their content stolen and re-published elsewhere; the good news is that Feedly correctly set the rel=“canonical” meta tag to instruct Google that all link values should be passed onto the original site. However, it’s impossible to ascertain if this was added after complaints began or was present from the start.

	
	<link rel="canonical" href="http://www.techmeme.com/131202/p30#a131202p30" />

They’re Stripping Ads

In what was probably a misguided attempt at duplicating a Readability type functionality, which strips a page down to it’s core essentials, Feedly was stripping all advertising, tracking, and social share buttons that may have been embedded in the original feed item. Here’s the full list of things being stripped out:


var visualExcludePatterns = [ "feedproxy","feedburner","/~","feeds.wordpress.com","stats.wordpress.com","googleadservices.com","feedads","tweet-this", "fmpub","-ads","_ads","pheedo","zemanta","u.npr.org/iserver","openx.org","slashdot-it","smilies","/ico-","commindo-media.de","creatives.commindo-media","doubleclick.net","i.techcrunch","adview","/feed.gif",".ads.","/avw.php”,"wp-digg-this","feed-injector","/plugins/","tweetmeme.com","_icon_","/ad-","share-buttons","feedsportal.com","buysellads",
"holstee","musictapp","/ad_","/button/","donate.png","/sponsors/","googlesyndication.com","/pagead","/adx","assets/feed-fb","assets/feed-tw","feedburner.com/~ff","gstatic.com","feedsportal.com"];

Taking out a “donate” button seems particularly galling, for some reason.

They’re Hijacking Links

Here we come to the most serious point, for not only were Feedly scraping the content from your site, they were then stripping any original social buttons and rewriting the meta-data. This means that when someone subsequently shared the item, they would in fact be sharing the Feedly link and not the original post. Anyone clicking on that link would go straight to Feedly.

feedly   Feedly Was Stealing Your Content    Heres the Story, And Their Code

Screenshot of scraped content from TheDigitalReader

So what, you might ask? When a post goes viral, it can be of huge benefit to the site in question — raising page views and ad revenues, and expanding their audience. Feedly was outright stealing that specific benefit away from the site to expand it’s own user base. The Feedly code included checks for mobile devices that would direct the users to the relevant appstore page.


function action( where )
{
var actionName = "follow";
var url = "http://feedly.com/#" + encodeURIComponent( "subscription/" + feedInfo.id );
if( /iPhone|iPad/i.test( navigator.userAgent ) )
{
actionName = "install";
url = "http://itunes.apple.com/us/app/feedly/id396069556";
}
else if( /android/i.test( navigator.userAgent ) )
{
actionName = "install";
url = "market://details?id=com.devhd.feedly";
}
        _gaq.push( [ '_trackEvent', bucket(), actionName + "." + where, feedInfo.id ] );
        window.setTimeout( function() { document.location.href = url;},  20 );
window.event.cancelBubble = true
window.event.stopPropagation();
window.event.preventDefault();
}

It wasn’t “just making the article easier to view” — it was stealing traffic, plain and simple. That’s really not cool.

Their First Fix: A Hardcoded Exclusion List

When The Digital Reader first complained to Feedly, their response was to re-code the Javascript to include an exclusion list. They literally added a check to every Feedly link to see if it was an item from The Digital Reader, and if so to bypass the page hijacking.


var siteExcludePatterns = [ "/TheDigitalReader/" ];
function shouldExcludeSite( url )

This is of course an absolutely ludicrous way of doing this — were they planning on adding to that list as time went by and more bloggers complained?

Nate, from The Digital Reader responded:

where do you get off demanding that I opt out of your hijacking? It’s like saying that I should have to ask someone to stop hitting me in the face wallet. And yet you think that is reasonable?

Their Second Fix: A Quick Hack to Bypass All The Code

After what I can only assume was overwhelming numbers of complaints that followed, they adjusted the hijacking filter as follows:


if( kind == "partial" || shouldExcludeSite( "http://www.techmeme.com/131202/p30#a131202p30" ) || true )
{
document.body.innerHTML = "";
document.location.href = "http://www.techmeme.com/131202/p30#a131202p30";
}

“Partial” refers to the scraped content being a full or a partial feed — there’s no point in hijacking feeds that only publish an excerpt after all. Presumably, this function began as the only check that occurred when choosing whether to send the user to the original site or not. You can see the first fix after that, which calls the function to check if this site is on the list of sites that have opted out; but then we see their final fix in place -


|| true.

If you have any programming experience, you’ll recognise the quick hack that says “the following code will always be run”, and it’s usually used only in debugging. If any of those 3 conditions are true (the first two no longer matter), Feedly redirects the users instantly to the original site.

And that’s where it stands now. So what have we learnt?

Basically, Feedly went about creating a kind of slimmed down reading experience, but the way they went about it — rewriting links to propagate their own service through subsequent social shares was pretty damned disgusting. This isn’t the only bad move Feedly has made recently either – last month, they began requiring log in with Google+ accounts (having seen how well Google+ login is working for YouTube, I guess), but that too was quickly reverted. The lesson is — you might want to start finding an alternative feedreader, unless you were already suckered into paying $99 for a Pro account.

The comments were closed because the article is more than 180 days old.

If you have any questions related to what's mentioned in the article or need help with any computer issue, ask it on MakeUseOf Answers—We and our community will be more than happy to help.

42 Comments -

0 votes

Thien

Ino Reader <3

0 votes

Pascal

They still do it int he ipad application. When you share something using email, they send a link to feedly and not to the original site.

3 votes

honkerdown

I still miss Google Reader :(

0 votes

Ron T.

I missed Google Reader until I started using Newsblur reader.

0 votes

Daniel Dawson

I use thunderbird for all rss feeds,i do not like feedly’s google sign in! This is a good way not to use feedly. good article.

0 votes

Cid Sinclair

Yeah, I noticed that a while back and found it very annoying. I’m glad I wasn’t the only one displeased. While their behavior isn’t a showstopper for me, it is a huge red flag. Their ham handed manner of attempting to fix it adds more fuel to the negative fire. Feedly has sucked up a huge amount of traffic since the demise of Google Reader and iGoogle. It’s not shocking that they’re having some growing pains. How they handle it is very telling about the company. I would also point out that as a Facebook user, I don’t click on shortened links as a matter of security. So, in my case…..they’re losing traffic! #duh.

0 votes

Will

This prompted me to move to InoReader. I am still unable to figure out how to terminate my (free) Feedly account.

0 votes

Tinkicker

Has InoReader worked out for you as far as features and useability? I’m interested in this “fix” :D

0 votes

Will

Yes, I am enjoying it immensely.

0 votes

Susendeep D

You can go to your Google account dashboard and revoke access to Feedly,if you have used Google account to use it.

3 votes

kkkkk

feedly directed me to this page…the irony

0 votes

Burl

Very enlightening, goodbye Feedly!

That’s theft, in my opinion, and the decision makers at Feedly should be investigated.

0 votes

Valerie Van S

So what APP do people enjoy using the most.. I just added Feedly today, which is quite funny actually.

1 votes

Paul Parkinson LRPS (@parkylondon)

I took the 99buck lifetime pro account when it came out. It won’t stop me from dumping Feedly if they don’t stop fucking with peoples sites. This is so very very wrong.

0 votes

CJ

I stopped using feedly a month or so after switching to it when Google Reader died. I don’t care for their insistence on using Google sign in as the only method of connecting. It made sense when Google reader was the source of the feeds but was/is suspect after Reader shut down and access to the feeds ended.

0 votes

Tom W

I tried Feedly after Google Reader shut down, but the way they presented articles (particularly in the app) didn’t suit the way I like to read RSS feeds. After that, I used The Old Reader for a while, before it shut down and I started using InoReader. In my opinion, InoReader is the best of the bunch right now.

0 votes

Exa

yes, feedly did a mistake and they should rectify this mistake, BUT this doesn’t mean that we should nullify everything feedly did to improve our RSS experience. Google and other huge corporations have worst mistakes, and believe me they wont give a damn about any website complaint if it plays for their interest.

sorry for my poor english.

0 votes

James B

I’m not sure they did do anything to improve my RSS reading experience. What features are you referring to exactly? They were always just a replacement API for me – never could stand the web interface for Reader or Feedly.

0 votes

Jean Pierre R

I’m switching to InoReader now I guess, I used my PR works with InoReader and personal RSS on Feedly but since reading this, I’ll be switching now to Full InoReader

2 votes

annonymousjon

Feedly added a blog post found here: http://blog.feedly.com/ explaining what was the reason behind some of these actions. Having worked in the software industry for some time now, I’m 90% sure that this is the “excuse” they chose to go with because it sounded the cleanest, but in reality, there was probably a management decision to do exactly what this article points out, steal content from original publishers.

0 votes

Lazza

Oh my, people is ALWAYS complaining. Too bad I discovered this feature after some genius decided to complain and force Feedly to stop.

I am a blogger myself (two different blogs), and I totally agree that people should be able to read the content, not be distracted with ads and other useless stuff. Want to make money? Go to work as everybody does. Blogging is about writing great stuff.

Providing a partial feed is a crime against humanity. That’s why sometimes I have to use Feed43.com or Dapper.net to create full feeds.

Also, if you include a little ad, it doesn’t mean that every person on Earth will use Feedly to strip it. Fortunately, we still have Readability and Evernote Clearly to get a good overview on websites when they have an awful layout. ;) Most of the people will use none anyways, so your ads will work anyways.

4 votes

James B

With respect Lazza, some people are good enough to write and get paid for doing so.

0 votes

Joseph Webster

Try Newsblur http://www.newsblur.com. It’s excellent and the business model is simple – you like it you can pay for a subscription. If you don’t want to pay, no problem. No tricks, no stealing PII no ads. Just use it a while and you will definite want to support it.

0 votes

Feedly has always sucked

NewsBlur is my preferred reader as well. After just a week of using it, I was ready to pay for a subscription. It’s kinda a no-brainer once you see how well it works and the training feature is invaluable.

0 votes

Lazza

James, yes, of course. And so? Do they get a lower salary from their company if a bunch of readers use feedly?
Does this have to do with the sacred right of users to read and display the content how they want? I can use Evernote Clearly. I can use Readability. I can write a small Python script to download the article and crop the main text by removing ads. Why shouldn’t I be able to use Feedly to get a clean view?
I am not here to argue, I would like to know what’s the point of hating one tool for the job and allowing all others.

0 votes

James B

It’s actually not so much about the stripping of ads thats the big deal; it’s the redirecting of social links so that they bypass the original site completely. No one cares if you want to apply your filters on your own machine, but it certainly shouldn’t hijacking links.

0 votes

Lazza

If I understand correctly, Readability does the same thing. Honestly, if I am looking at a page on the feedly.com domain which displays a single article, I expect that when I click a “share” button, it shares the same URL, not another page. If I want to share the other link, I can open the original article and share it.
Sharing of a different URL without the user noticing could be as well considered a sort of hijacking. Not a big deal anyways IMHO, as long as the shared page contains a link to the original post somewhere.
But maybe I understood your point in a wrong way, in that case I apologize. :-)

0 votes

Geeker

I’m glad that I’m not the only person that feels that way, Lazza. I’ve had far too many times where, as a user of a “strip it down to the article text/images” type feed-reader setup, I’ve gone to forward links only to realize I’d be sending an older adult or senior to a page with horrible contrast, minuscule fonts, and confusing layout. I end up either not sending the link, or finding some way to send just the text.

I wasn’t terribly shocked to find that The Digital Reader was the blog starting the initial ranting. I stopped reading the entire blog because of the primary writer’s affluent sense of entitlement & righteous crusades. :-p

0 votes

Geeker

…and I have no idea why the heck my comment isn’t showing the paragraphs I put in. (There *should* be one after “send just the text.”)

1 votes

excentric

So glad I switched to Digg after trying out Feedly when Greader was murdered by those Google bastards.

1 votes

Kannon Y

Great article.

They are also stealing search traffic clicks. If you search for certain article titles, it sometimes will link to the Feedly Cloud COPY of the original blog post.

0 votes

Joel L

Nice writeup. Kinda sad that I’ve been endorsing Feedly. Currently trying out Digg Reader but might give InoReader a go since a lot of the comments are mentioning it.

0 votes

Tim B

Excellent write-up James :)

0 votes

Suzi L

I’ve been getting annoyed at Feedly for doing this for some time so nice to know I wasn’t the only one frustrated by this. But so far, I haven’t found a decent alternative.

0 votes

radoslava

What do you think about Vienna ? I use it and I am satisfied.

http://www.vienna-rss.org

0 votes

martin

yeah you can try http://www.life-framer.com decent UI

0 votes

Aashish

Try Digg Reader or The Old Reader. Much better alternatives.

0 votes

Kress

Have anyone tried bloglovin? that’s what I’ve been using after google reader and it seems pretty useful to me.

0 votes

Gina Huly

Try out http://silverreader.com most honest and fast RSS reader out there.

0 votes

Pete Nikolai

I noticed they recently added something called Feedly Deals that pops us to try to direct commercial activity through it. Any concerns?

0 votes

James B

Hmm, got a screenshot? I don’t actually use the feedly web interface (just RSS syncing), so I can’t say I’ve noticed anything.

0 votes

Pete Nikolai

Turns out it is the Add to Feedly extension that has tried to have automatic price comparison ads pop up. I removed the extension.