When a gravatar is changed, other users will only notice it if they clear their cache.

Therefore, Gravatar changes can go unnoticed for a very long time because people don't usually clear their cache.

It would be very easy to add a version field to the users table and append it to the Gravatar query string, like this:


Gravatar will ignore the extra field (I checked)

Then, whenever someone changes their gravatar, they could update this version field in their profile page, and force everyone to see the change.

  • 14
    Voting to close as "Makes too much sense for Jeff to ever agree with". – GEOCHET Feb 2 '10 at 19:16

If you want to force Gravatar to immediately start to show a different gravatar for you, change your email address in your M?S[OFU] profile. Email addresses are free.


The gravatar.com server tells a browser to cache for only 5 minutes, though they are doing some caching themselves as well. I doubt that their own caching can be fooled by additional parameters.

Date: Tue, 02 Feb 2010 19:36:17 GMT
Last-Modified: Tue, 25 Aug 2009 20:32:54 GMT
Expires: Tue, 02 Feb 2010 19:41:17 GMT
Cache-Control: max-age=300

Part of the problem is that Gravatar is sending a bad Last-Modified header. It seems to be when you signed up for Gravatar, not when you last changed your gravatar image. This makes Chrome, in particular, think that the image has not changed, even on a Ctrl+F5 refresh. Even though Gravatar sends a max-age of 300 seconds (5 minutes), the browser sees that Last-Modified hasn't changed and figures it doesn't need to re-download the file. The only way I've gotten Chrome to update Gravatars is by clearing my cache.

This could be resolved if Gravatar would send a proper Last-Modified header. Tell them about it here. (Note: that page is technically for reporting abuse, but it is the only way I could find to send a message to an actual person. If there is a page to report problems please let me know.)

Update: Looks like Gravatar has fixed this problem and sends a proper Last-Modified header.

The issue would also be partly resolved in Chrome if Ctrl+F5 refresh actually ignored cache like it is supposed to. (I opened a Chrome bug report about this, which was closed as a dup of this bug report.)

Update: Looks like Chrome has fixed this bug now! Not sure what release will first include the fix though.

  • 1
    Ah, good find! Most, if not all, browsers (certainly not just Chrome) actually don't compare the Last-Modified against what they know themselves, but instead issue a GET request including an If-Modified-Since header, like at web-sniffer.net/… If you're right about the wrong date at Gravatar, then Gravatar responds HTTP/1.1 304 Not Modified and does not even return an image to start with. – Arjan Feb 9 '10 at 16:46
  • (+1 though I cannot confirm that the Last-Modified date is indeed wrong. Anyone with a Gravatar account can easily test using web-sniffer.net) – Arjan Feb 9 '10 at 16:48
  • 1
    @ArjanvanBentem: For my Gravatar, according to web-sniffer.net, it is returning Last-Modified: Fri, 20 Jun 2008 12:25:23 GMT, even though I changed the image in January 2010. I'm pretty sure the June 20 date was when I first signed up for Gravatar. Or maybe it was when they first saw the hash of my e-mail address. – Kip Feb 9 '10 at 17:04
  • Odd, I forgot the +1 I "promised", and of course you needed that one vote ;-) Anyhow, you do request using the MD5 hash of a lowercase email address, right? (And I hope these sites do that as well.) If so, then indeed you found a huge issue at Gravatar. But: the old blog.gravatar.com/2005/10/06/state-of-the-gravatar claims I’ve implemented an If-Modified-Since handler that will return 304 Not Modified if the requested avatar has not been changed since the last time your browser downloaded it. – Arjan Feb 9 '10 at 17:11
  • @ArjanvanBentem: I don't know about If-Modified-Since, but I know in Chrome it held onto my old gravatar, even with Ctrl+F5 refresh, until I manually cleared my cache. And Firefox held onto it for several days, until I did a Ctrl+F5 refresh. (Not sure how long it would have kept it without Ctrl+F5 refresh.) – Kip Feb 9 '10 at 17:17
  • I've never set up a Gravatar account (if only for the privacy issues mentioned at meta.stackexchange.com/questions/4553/non-gravatar-avatar/… -- though obviously not signing up does not stop Gravatar from figuring out who I am, if they would care). For the identicon used at this website, Gravatar returns Last-Modified: Wed, 11 Jan 1984 08:00:00 GMT -- so the June 20 date is probably indeed the day you signed up. For non-accounts that 1984-date is returned. – Arjan Feb 10 '10 at 10:07
  • It seems Gravatar now returns a proper Last Modified date again, for subscribers. Like your avatar today shows Last-Modified: Tue, 27 Sep 2011 18:13:17 GMT. Did you change your avatar yesterday? – Arjan Sep 28 '11 at 20:43
  • Kip, did you change again on June 28th? – Arjan Jul 13 '12 at 12:13
  • @Arjan yes i did. do you have a monitor set up on my gravatar? :) – Kip Jul 13 '12 at 17:16
  • Yes, but Big Brother is good as I can tell you when the new image fails! (Or, to ensure you can sleep at night: I was looking for that issue with the Last-Modified, so just a coincidence.) – Arjan Jul 13 '12 at 20:53

Gravatar will ignore the extra field (I checked)

Please reference their API that indicates this usage is supported and will always be true in future revisions of their interface. Otherwise it would be unwise to implement it.

  • 1
    Their API says nothing one way or the other. We could contact them, or change it back if it breaks. – SLaks Feb 2 '10 at 19:13
  • 3
    Maybe we should request an explicit API for "increment this gravatar's version number", and for querying that version. – Ether Feb 2 '10 at 20:01

I am not sure we want to encourage people to change their gravatar images frequently.

It doesn't take that long for gravatars to refresh, anyway.

  • 1
    How long does it take? – SLaks Feb 2 '10 at 19:13
  • 2
    +1 Frequently changing gravatars/usernames makes SO a bit playground-ish in my opinion. Pick one, and get back to work! :) – Sampson Feb 2 '10 at 19:13
  • 1
    What about usernames? (I won't name names) – SLaks Feb 2 '10 at 19:14
  • 8
    See, I hate this. I would change my avatar if Gravatar made it easy. I recognize that's the point, which is why I will think twice before using Gravatar in the future. The concept of Gravatar goes against so much of what I hold dear. Damned profile-centralization software. Bah humbug. – Welbog Feb 2 '10 at 19:19
  • 3
    Told you all so! – GEOCHET Feb 2 '10 at 19:24
  • 3
    Everything that's wanted for SOFU should be lighter on meta... changing our meta names is cool – juan Feb 2 '10 at 19:24
  • 4
    When I switched my avatar to a white ribbon to commemorate Dec 6, it took many days to switch in both directions, even when I was clearing my cache explicitly (and who knows how long it took to show up for everyone else). – Ether Feb 2 '10 at 20:00
  • @Æther, given the response headers, I think it would take at most 5 more minutes for everyone else... – Arjan Feb 2 '10 at 21:18
  • @AEther, given that the gravatar is there so that people know who are are, why are you chaning it at all? – Ian Ringrose Feb 2 '10 at 22:48
  • 1
    @Ian: glib answer: You must be new here. Serious answer: there has been discussions here in the past as to whether it is acceptable to change username and/or image, and yes it is. SO is a site where the answer is more important than the user; you should not be prejudiced based on who the post is coming from. There is information about me in my user profile, and my name (rarely) changes; there should be no issue with the gravatar changing occasionally. – Ether Feb 2 '10 at 23:39
  • @ArjanvanBentem: actually, it could take way more than five minutes, especially if the user is using Chrome. Gravatar is sending a bad Last-Modified header, which makes the image stick around much longer than five minutes. See my answer. – Kip Feb 9 '10 at 16:39
  • I want to change my gravatar 30 times a second so people see video – Jason Goemaat Feb 15 '15 at 13:42

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .