If I was to write such an overwhelming algo, I will put these factors as highly relevant.
SEO? that's the past,
but dynamic factors - that's the future. At least that's how I view it and also, that's what I believe in - if users love my site - then they will thank Google by using it once again.
I'm just wondering how it is possible to have an algo that figures out whether or not it's hard to receive the free item. - Maybe they are just targeting all free items.