Photoshelter and Color Management
I’ve been using Photoshelter pretty heavily these days. I like Zenfolio. I like SmugMug. But, the feature set at Photoshelter is right on target for what I need. I should write up a blog post comparing all these services at some point and what some of the decision points are. For right now, however, I’m going to pick on a problem.
When Photoshelter generates resized images for their website, they convert everything to sRGB. As described in the Color Profiles section of their tutorials, this is actually a good thing. Most web browsers are still woefully ignorant of color spaces and really, the sanest thing to do is convert to sRGB. At least it’s the sanest thing to do in 2009.The problem is that Photoshelter doesn’t tag the images with an sRGB profile. They make sure the data is in the sRGB colorspace, save it off, and send it on its way untagged. Why is this a problem? Well, if you’re using a color managed browser, such as Safari, you could be seeing a better representation of the image. Instead, since the images aren’t tagged, they get displayed in an unmanaged way.
On my MacBook Pro, the result is that everything on Photoshelter is slightly desaturated. It’s not a huge problem, but it is a surprise to see when you know that every application you are using is color managed and you are running with a profiled display. It’s safe to say that it’s an annoyance. With my Mac Pro at home with a wide-gamut NEC 2960 WUXi display, on the other hand, things go nuts. Since the display has a huge gamut, the effect on all images that aren’t tagged with a profile is to over saturate.
To show you an example, here’s a view of how a photo of Jack Dangermond I took at Where 2.0 last week looks on both of my displays, as rendered in Safari viewing the Photoshelter page the image is on. I took screenshots (tagged with the display profiles) on each machine, then combined them, converted into sRGB, and then saved off this JPG. The result, even if you’re not viewing this with a managed application, should give you an idea of the deltas involved in what I see.

The end result is that Mr. Dangermond looks like he has a pretty good sunburn on the NEC display, and is slightly drained of color on my MacBook. Nether result is what I want somebody using a color-managed browser to see.
I know. Color managed browsers are in the minority still. But if you’re on a Mac and using the default browser like some large percentage of creative types, then I want you to be able to see my images with the right intent. And, even if you’re not using Safari, Firefox 3 has some switches to enable color management, though why it’s not on by default in 2009 is beyond me.
Bottom line: I totally dig Photoshelter and I’m really digging most of its feature set. Hopefully, this is something that folks over at Photoshelter can turn on pretty easily. From my vantage point, it would seem that they just need to include the sRGB profile in outbound images. But what do I know?
N.B. Ordinarily, I would have posted this in the Photoshelter forums (to this thread, in fact) rather than using my blog, but I was having problems posting this evening. So, I posted it here so that I can send on a pointer and not forget to do this later.
Update 2009/06/02
I got a very nice email today from a Photoshelter representative explaining their position. It was a perfectly great reply, except for the statement an assumption on the part of Photoshelter that is probably at the crux of the matter. The salient part of the message is the following:
The way to force all browsers to see the same way (meaning browsers that can color manage and those that can't) is to strip the color profile from the web preview. By stripping the color profile we are telling the browser to render the image as sRGB, which should be the default behavior of all browsers when no profile exists. Basically, all browsers should rendering images on PhotoShelter as sRGB -- the standard color space for web presentation of images.
Let me step back a minute and provide just a touch of context for those of you that haven’t dealt much with color management. Software that doesn’t use the system’s color management services draw, by definition, in the out device’s native color space. This means that when an application draws a red pixel (say 255,0,0 on an 8-bit device), the result is as red as the display can manage. On a laptop, it’ll be the best red the laptop display can do. Most desktop monitors can do better with pure red. And the best wide gamut monitors will produce a red that will knock your socks off. While the 8-bit value is the same, they’re all different reds.
The different shades of red that can be generated with thes same value of 255,0,0 is why we have abstract color profiles like sRGB, AdobeRGB, and many others. When a value of 255,0,0 is in a file tagged with a profile, the system can do a bit of math to display a red that better fulfills the intent of the creator of the image than it can without this bit of information. It’s sometimes not perfect, especially if the gamut of the display can’t encapsulate the color space of the image, but it’s a lot better than without the profile. Without a profile, even the best color management software can make no determination of what red it should be, so it just tells the monitor to draw maximum red and damn the torpedos!
Now, the W3C would like all browsers to render untagged images in sRGB, as written in A Standard Default Color Space for the Internet - sRGB. As an owner of a wide gamut display, and in the interest of better color for all, I’d like that too. But, as far as I know right now, the only place the guidelines outlined in that document happen with respect to untagged content is on Windows Vista. At least that’s what I’m told. I’ve also been told me that while it works to some degree, it’s not nearly as reliabily as just including the profile in the first place. (yes, you’re right. I should fire up Vista myself and check it out). Even if the implementation in Vista was perfect, since Microsoft’s latest released effort hasn’t had the greatest of adoption, you can hardly say that most browsers exhibit the behavior of treating untagged image data as sRGB.
If you want to see some of the ways browsers do act in the real world, point a few at G. Ballard’s Web Browser Color Management Tutorial. Maybe that can put into visual terms what takes so many words to say.
By stripping the profile, Photoshelter is trying to tell the browser to draw in the sRGB colorspace. In fact, they are telling most browsers nothing. Windows Vista is the only place where this works out well. In all other cases, the browsers just draw the image into the display’s color space. This means an area of pure red will be drawn as red as the display can draw it. Likewise for every other color. No color management math will be applied to the equation, even with browsers that know how to apply that math when given the profile.
The reason the convert-to-sRGB-with-no-tagged-profile method works at all well is that the native color space of consumer monitors usually aren’t so far away from sRGB as to make the issue too noticeable. It’s noticeable a bit on many monitors, but it isn’t too terribly bad. The problem comes in on displays that do differ considerably from sRGB. There aren’t a lot of users of wide gamut displays yet, but the bulk of these new displays are being used precisely by those that care the most about color.
If you do what Photoshelter is doing—convert an image into sRGB and fail to tag it with a profile—then you choose mediocrity in most circumstances, even when displayed on a browser that is color managed. On monitors that are close to sRGB, this leads to the same sorta almost ok presentation that Photoshelter intends. On better monitors, well, it leads to exactly the results that you see in the example illustration in the original post.
In any case, there should be zero impact from including the profile in the images. None. Zip. Nada. By including the profile, the images will look their best on browsers that support color management, and will degrade as best as we know how on browsers that don’t. Really, what’s not to like?
Update 2009/06/10
After trading a few more emails back and forth with PhotoShelter, it’s clear that they know the tradeoffs they have made with their implementation decisions. They’re happy with those decisions and really, who am I to argue? I can file a bug report, but if it’s not classified as a bug, then that’s that.
This does create a problem for me as color management of content is critical in my book. I’ll have to evaluate how this stacks up with the rest of the feature set that PhotoShelter provides, along with other alternatives that do preserve profiles.

21 Comments
James,
Did you know that you're allowing downloads from your PSC site and your images aren't watermarked?
Also, you don't seem to have image purchasing turned on for your PSC images.
Syd
Reply to this comment
Syd, indeed. I'm definitely not fully utilizing Photoshelter yet. I'm getting there, but my time is split in many directions at the current moment. Thanks for the nudge.
Reply to this comment
James,
That is a great example. I have been drawing attention to this issue for a long time now. you'll be happy to learn that Firefox 3.5 will have management turned on by default. Unfortunately only in the same way as Safari does. You'll have to do a settings change to have it manage untagged images. In other good news, the latest Chrome builds color manage (again the way Safari does) ! Things are finally moving in the right direction. That said, Photoshelter should just attach a sRGB profile.
Reply to this comment
Jao, the color management story is moving in little steps. At this point with wide gamut devices, it would be nice if Safari--as well as the rest of Mac OS X (and Windows for that matter)--drew untagged colors in an sRGB color space. Apparently that has complications of its own tho.
One day we'll get there.
Reply to this comment
Thanks for posting this...
I made the last comment in the thread you referenced (http://pa.photoshelter.com/mem/forum/thread-show/FT0001DxDSJXG11M#6) and also opened up a support ticket with Photoshelter to get this resolved.
As a result, I had a great email conversation with one of their support engineers, who said the lack of embedded profiles was a design decision to provide the best cross-platform/cross-browser results. Unfortunately, it looks like this is an "agree to disagree" issue as far as embedded profiles are concerned.
Hopefully some more exposure and some additional "independent" testing will help to convince them to embed the profiles, or at least give us customers the option to enable this.
andrew
Reply to this comment
Andrew, thanks for chiming in here. I should give commenting on that thread another try. Maybe something was busted over the weekend that was preventing me from posting there. And thanks for relaying on the salient bits of your conversation with their engineers.
I do indeed get the design decision--especially in a world where most hits come from browsers that don't color manage. Doing the conversion is good stuff. But, the part I can't see is how adding the sRGB profile tag would affect cross-platform/cross-browser results in a bad way. The net-net should be that things are the same as always on unmanaged browsers, and they should be better in situations where people are using managed browsers, especially on wide gamut displays.
Interesting. I'll have to open my own ticket now that it's a workday.
Reply to this comment
Agreed on all points.
From my conversation with Photoshelter support, it looks like they're trying to save space by not embedding the profiles. Especially since, as you mentioned, most of their traffic comes from unmanaged browsers that default to sRGB anyway...
Let us know how your ticket works out!
Reply to this comment
Andrew, hrm. Saving space would be a poor excuse. That's the same excuse that Flickr uses to strip all metadata from images. /sigh/
Reply to this comment
I found that the simplest way to get accurate colors in all browsers is to convert the image to my calibrated screen colorsync profile. Check it out here.
http://www.jackenhack.com/blog/archives/2009/05/03/getting-the-image-colors-look-right-in-all-browsers/
Reply to this comment
Jack, your technique is indeed going to ensure that everything looks the same across all browsers, managed or not, on your display. After all, you've converted the image colors to be displayed in your display's color space. It'll even work when I view them with my color managed browser on my display as the profile for the image is there and ColorSync will do its magic.
But, it won't sort out how your images look on an unmanaged browser on another computer whose display doesn't match your display's color space.
Reply to this comment
Yeah, I know what you mean. But I export the picture from Photoshop with "Export to web" without any included color profile. This makes the image look much closer to the intended colors than any other method I've tried. Unmanaged browsers expects picture to be in sRGB, and if you select to preview for Windows it gets pretty close.
Just as a side note, It's fun to actually color calibrate monitors for people who don't have a clue of what it does. They tend to call on you if they reinstall the system, because now the screen looks funny! :-)
Reply to this comment
Jack, as I understand it, unmanaged browsers only interpret untagged images as sRGB on Windows Vista. Is that the OS you’re running?
Reply to this comment
Nope. Mac OS X. (well, I'm actually trying from Windows right now) And I'm pretty certain that browsers on mac also defaults to sRGB if no profile is included. Mind you, all is based on my empirical result, testing to upload with/without profiles, converting to sRGB, converting to my own screen profile (and then removing the profile). The last one gives the best result on all the computers I've tried.
Reply to this comment
Jack, that's odd. In my experience, browsers on Mac OS X do not default to sRGB in no profile is included. See the image on top of this page:
http://www.gballard.net/photoshop/srgb_wide_gamut.html
Unless your monitor is so right on at sRGB, you'll see some difference between rolling over the image on the top of that page and not. I do on Safari 3, Safari 4, and Firefox. Now, it's possible that your monitor _is_ right at sRGB.
In my experience, I personally see a difference on both my laptop display (MacBook Pro, calibrated), and my home NEC display. The two images Jack Dangermond (untagged on Photoshelter) above were captured on (left) NEC wide gamut profiled display with Safari 3 and Mac OS X Leopard; (right) MacBook Pro with profiled display with Safari 4 and Leopard. If Safari were indeed interpreting untagged data as sRGB, these two images would match.
But, and most importantly and In any case, if your process is giving you the results you want, then who am I to dissuade you? :)
Reply to this comment
So all in all it would be best if Safari on a Mac would assume web pictures without embedded/tagged profile to be in sRGB color space instead of default monitor display (which makes colors look oversaturated on wide gamut AdobeRGB displays and dull on most sRGB displays)?
Any reason why Safari on Windows IS assuming all web pictures without embedded/tagged profiles to be in sRGB and on Mac is not?
Reply to this comment
Just an historical note: The first browser to support color management - which includes assuming untagged images in sRGB, and using embedded profiles - was Internet Explorer 4 on the Mac. It was great to use with my calibrated ColorSync Display back in 1999...
It's a little sad the state of browser color management hasn't really advanced since back then, when I told off Philip Greenspun for his lame argument that browsers should support gamma. (How someone could, even then, be so into computer photography but entirely ignorant of ICC is beyond me.)
Reply to this comment
I have the same problem. I have a NEC 2690 color calibrated monitor. Uploaded images on sites like Photoshelter and Viewbook look over saturated in the RED. Very upsetting when I use both to display my work. What you are saying, PS at least, are not assigning a color profile causing wide gammet monitors to display in correctly.
JEff
Reply to this comment
Firefox ver. 3.5 (and newer) on MS Windows (XP and Vista) follow the W3C guidelines. Firefox will render untagged images in the sRGB colour space. I think this is the sensible thing do do.
Apple seem to have opted for a different solution in Safari. Apple software render untagged images in the monitor's default colour space. This decision breaks with the retionale behind sRGB: That it is the default colourspace for the web. There are millions of untagged images on the web, and they all display completely random on large gamut monitors if the user is running Safari (they display OK in Firefox on Windows).
I think you should file a bug report, but not with Photoshelter - but with Apple.
Reply to this comment
Gisle, I agree with you totally that the way Safari handles untagged images is pretty lame. However, I don't think that Photoshelters stripping of profile information is any less lame. They both deserve bug reports.
Reply to this comment
I realize I'm late joining this thread, but thought I'd give it a go since I've found this info tremendously useful. At the beginning you'd mentioned a need to compare the services of Photoshelter, Smugmug, and Zenfolio. I'm in the midst of trying to make a decision in order to enable web sales + storage. Wondering if there's a consensus out there as to what's best for a professional photographer looking to be there own stock retailer?
Reply to this comment
Right now, I think that most of the services are good depending on your personal needs--but no single service seems to have reach full perfection. Out of this list, Photoshelter is probably best for your own stock because of its integration with FotoQuote.
Reply to this comment
Leave a comment