What about the cricket?

Excuse the largely Travelfish.org-unrelated waffle.

The other day a high profile RSS reader launched to the iPhone. Flipboard. They’d already been available on iPad for some time and had received considerable critical acclaim, so when it launched for iPhone, I grabbed a copy.

First the good.

It’s a very clever, innovative approach and UI. Think flicking through one of those sprirally business card holder thingies. I actually read a 32-page Guardian story on it today and had no issues flicking from page to page (or board to board perhaps) — unlike online where even a page two for a story has me frothing at the mouth.

It’s also very easy to use and navigate. It really is a pleasure to use.

Then the not so good.

Flipboard comes with a bunch of pre-installed RSS feeds, broken into News, Business, Tech & Science, Video, Cool Curators, Photo & Design, Living, Entertainment, Sports, Local, Travel and finally, Style.

I zoomed straight to Travel to see who was in the wrap (not Travelfish, but we’re pretty small fry, so I’m not offended, really!) to see it was the regular suspects including LP, Frommers and National Geographic along with some North American travel sites I’m familiar with and finally some travel bloggers (all of whom (I think, apologies if I’m off here) are North American). Some raised a bit of an eyebrow, but it was overall a collection of the usual suspects.

Then I browsed over to news. Of thirty news sources, one, AlJazeera, was not a US or UK news outlet.

Isn’t this internet thang global?

Over in the “Local” section, subtitled “Regional media, city guides, local food” (code for “all the stuff we couldn’t stick elsewhere”) 23 of the 32 sources are US or UK based. There’s a couple of hat tips to Asia – Shanghaiist gets an honourable mention at least, but there’s no Asian or Australian newspapers, Paris covers Europe, and, well Africa, just don’t go there, all the news out of there is bad anyway.

Anyone who knows me, knows I’m the least sport-inclined Australian on the face of the planet, which makes this app perfect for me. Zero cricket, rugby (either code) or badminton, but it is quite handy for baseball (for him) and yoga (for her).

I realise it must be difficult to boil down a gazillion news sources to something even remotely global in coverage, but Flipboard hasn’t even tried. It was suggested by tech journalist Jon Russell that “they have always claimed to be a US product” but nowhere on the app description page does it say something along the lines of “This app comes preinstalled with a selection of primarily US and UK media“.

To my mind it is an opportunity missed to perhaps expose Flipboard users to alternative news sources — I’m not talking about the People’s Front of Judea (or the Judean People’s Front) newsletter, but be they news sources like The Sydney Morning Herald, Bangkok Post or the Times of India, or a plethora of international travel bloggers who have interesting stuff to say, or, hell yeah, even a cricket mag!

If you’re going to preload RSS feeds and call it “News from the World” then it’s not a bad idea to make it “News from the World.

Until then, I’ll stick to Reeder which comes pre-loaded with nothing except an interface that just does what it says on the can.

Mobile platforms and Travelfish.org

I often get asked “Why don’t you have an Android App as well as an iPhone one” and I have two standard replies: We don’t have the resources to build for another platform and, at least according to our traffic, nobody seems to be using an Android phone to surf Travelfish.org.

I’ve never really understood it, but maybe you do. Below is a chart of the mobile platforms used to browse Travelfish.org. I realise the iPad doesn’t really belong there, but if it is good enough for Google, it will do for me too.

You’ll see from May through to November this year Android’s share has grown from just under 10% to 13%. Meanwhile the iPhone and iPod Touch has gone from 59% to 47% and the iPad from 27% to 35%. Note, these percentages are of just mobile traffic, not overall site traffic.

The overall iPhone, iPod, iPad section has barely shifted — from 85% to 82%.

Given reports like this, why aren’t we seeing a majority of readers on Android?


Mobile platform use on Travelfish.org

Mobile platform use on Travelfish.org. Click on image for a big version

Below are the share of overall traffic held by mobile platforms (including the iPad) as per Google Analytics.

May 8.5%
June 9.2%
July 10.2%
August 10.3%
September 10.6%
October 12.5%
November 13.8%

Don’t have a mobile optimised interface? Perhaps time to start thinking about one.

Are people talking about your travel brand on Facebook?

In a fit of procrastination this morning I looked at the Facebook pages for a dozen travel brands along with ten travel bloggers and collected the two numbers in the left hand column: “Like this” and “Talk about this”. I was curious if there was much correlation between the two — seems there is.

Most are familiar with the Like This number. It represents the number of people (or bots masquerading as people) who have, at some stage in their like “liked” your page.

For Talk About This I went to Googletron which sent me to Quora which sent me to the Clix Group where I learned that “Essentially, the metric tracks the number of people who have created a story from the page in the past seven days.” There is a number of ways you can do that, by liking the page, posting on the wall, commenting on the wall and so on (see the Clix Group page for a full list).

So, I think I’m right in saying Like is everyone who has ever liked you and Talking about is those who have somehow interacted with you in the past seven days.

What I then did was select a dozen travel brands and ten bloggers and collated their likes and talking abouts. The only criteria was that the site had to have at least 1,000 people who had liked it. I then divided the number of talks about by the number of likes, which gave me a percentage score for each site.

The Facebook pages are (in alphabetical order):

Travel brands
Bootsnall https://www.facebook.com/BootsnAllTravel
FodorsTravel https://www.facebook.com/FodorsTravel
FootprintBooks https://www.facebook.com/FootprintBooks
Frommers https://www.facebook.com/Frommers
KLM https://www.facebook.com/KLM
LonelyPlanet https://www.facebook.com/lonelyplanet
MatadorNetwork https://www.facebook.com/matadornetwork
RoughGuides https://www.facebook.com/roughguides
Travelfish https://www.facebook.com/travelfish
Travellerspoint https://www.facebook.com/Travellerspoint
TripAdvisor https://www.facebook.com/TripAdvisor
VisitBritain https://www.facebook.com/LoveUK

I picked the above as examples of either major legacy publishers in travel (eg Lonely Planet, Rough Guides) or new media (Bootsnall, Matador etc). Travelfish.org is my site. Why KLM and Visit Britain you ask? Because they’re both often talked of as best case examples, so I wanted to include them to provide a benchmark of sorts.

Travel bloggers
AlmostFearless https://www.facebook.com/almostfearless
Everything Everywhere https://www.facebook.com/EverythingEverywhere
Indie Travel Podcast https://www.facebook.com/indietravel
JonnyVagabond https://www.facebook.com/johnnyvagabond.rtw
LegalNomads https://www.facebook.com/LegalNomads
Malaysia Asia https://www.facebook.com/MalaysiaAsiaPage
NomadicMatt https://www.facebook.com/nomadicmatt
TwentySomethingTravel https://www.facebook.com/TwentySomethingTravel
TwoBackpackers https://www.facebook.com/twobackpackers
Uncornered Market https://www.facebook.com/UncorneredMarket

In picking the bloggers, some (Everything Everywhere, Legalnomads, NomadicMatt and Uncornered Market) I know personally, others I follow or have heard of them frequently. Nothing scientific at work here.

The results
Save a couple of outliers (KLM for travel brands and Legal Nomads for bloggers) anything over 3% and you’re ahead of the pack. The bloggers tended to rank slightly higher, perhaps due to the more interactive vibe of that slice of the web or also perhaps because of generally lower overall numbers.

Chart of Facebook user interaction

Chart of Facebook user interaction

Some more thoughts:

Have budget? Use it wisely
I guess it helps to be an international airline like KLM as they’ve some budget to do some pretty cool things to get more energy out of the page, but then VisitBritain, which has received considerable praise (and I assume budget) was lagging a bit in the crowd.

Be yourself
I dropped Jodi (of Legalnomads) a line to ask after her Facebook activity and she replied saying “I don’t tend to post based on what I think my FB fans might like so much as I post the things that I find engaging or interesting, which I hope is what led them to the page in the first place. Times when I travel I post less external links & more photos from the road. It’s been very rewarding to have such a great response and engagement on the page.”

Makes sense. If you’re trying to make a connection with people, it’s best to try and be yourself. Perhaps more of a challenge for a brand than a blogger — which may explain the slightly higher rate for bloggers.

Post frequently
With the Travelfish.org Facebook page we post four to five times a day Monday to Friday (less on weekends) and that appears to have helped the reader interactions. Compare that to say Rough Guides, which is publishing to the wall every now and then, often with stretches of 3-4 days between posts.

Post photos
Photos, regardless of quality tend to get a lot of likes and comments. Images embedded in the wall-stream get better interaction than a link to a photo off-site, but then you lose the traffic across to your site. Bit of a tradeoff here and one needs to make a decision where you want people to be consuming your content.

Is it worth it?
I’m no Facebook fan personally, my true allegience lay with Twitter, but at the start of the year we decided to make a concerted push to increase our presence on Facebook. We set a goal of attaining 10,000 fans in the year (which we’re not going to make) and to post on the site frequently.

Facebook is now our second largest source of traffic after Google. Facebook brings us more visitors than Bing or Yahoo Google and it tends towards good traffic.

So yes, it is worth it 🙂

I’m no genius with numbers, the data I used for the graph above is here if you’d like to cook it up other ways — do let me know what you come up with.

A few ways Google Webmaster Tools could be improved

Don’t want to work on what you should be? Need some procrastination fodder? Head over to Google Webmaster Tools and spend some time fixing up stuff on your site.

I’ve been spending quite a while there recently and while it is very useful it could be moreso and here are a few suggestions Google could implement to help improve matters.

Site Configuration -> URL Parameters
Like much of GWT, this section is poorly written and confusing, but what it really needs is a checkbox beside each displayed link reading “This querystring hasn’t been used within the site architecture and has been dealt with by 301 redirectes for over 3 years. You can ignore it now.”

Your site on the web -> Keywords
Where possible, the words listed as being on your site should actually appear on your site. In our case, one of the words is “Guinea” supposedly 71,000 times. Yet, of the 10 pages listed, it only appears on one, and on that page once.

Your site on the web -> Internal links
Why is there over 16,000 internal links counted to a page but in fact only 200 pages listed? Last I checked each of the 200 pages didn’t contain 80 links apiece to the parent page.

Diagnostics -> Crawl errors -> Web
Add an option to say “I fixed this a month ago, you can ignore it now”.

Diagnostics -> Crawl errors -> Not followed
Add an option to say “I fixed this a month ago, you can ignore it now”.

Diagnostics -> Crawl errors -> Not found
Add an option to say “I fixed this a month ago, you can ignore it now”. Also needs an option saying “This link is from an external site obviously managed by a cretin or a bot. Ignore it” Better still, just split the data between internal broken links and external inbound broken links.

Diagnostics -> Crawl errors -> HTML Suggestions
Add an option to say “I fixed this a month ago, you can ignore it now”.

Labs -> Site performance
Why is this chart totally different to the one in Google Analytics? Would be great to see this include average connection speed as seemingly many Travelfish.org users are utilising an abacus to access the site.

Why I removed most of the social icons off Travelfish.org

Prevailing wisdom holds that you should make it as easy as possible for people to share your content through the various social networks and there’s a gazillion plug-ins and services built around helping site owners to do this.

Save a few stragglers, I’ve just finished removing all the social icons off Travelfish save one — Facebook.

Google+: DOA.
Twitter: Annoying extra tags that get added in – Mashable and NYT I’m talking to you!
Delicious: See Yahoo!
Flickr: See Yahoo soon.
StumbleUpon: Junk traffic. (to be fair we didn’t have SU, I just wanted to take the opportunity to say it is junk traffic).
Instapaper: Nearly all regular users (like me) use a toolbar button or widget on the phone. Very very few websites have an Instapaper button as we did.

In slightly more detail
Google+ I removed perhaps a month ago, though not for the same reasons as detailed in this amusing post — I just think it is way too complicated. I’ve removed clickable icons for Twitter, Delicious, Flickr and Instapaper, and have also removed the Facebook icon we had and instead have placed the Facebook Like/Send button at the top and bottom of much of the content. Instapaper is removed, but the clipping is still coded in, so you still get the best bits – you just need to use your toolbar widget.

This was partly informed by my personal use (as with many others, I never use buttons as I perfer to cut and paste the URL and add my own titles and blurbs.)

But it was also as a result of observations I made during a recent trip to Thailand where, over a few weeks, the ONLY social website I saw open on a traveller’s laptop was Facebook.

It was also a result of conversations with my family and some friends — most of whom, while not technophobes, are most certainly not rabid users of technology. Despite this, they all have Facebook accounts and use it semi- to regularly. None have Twitter, Delicious nor Flickr accounts.

Travelfish.org is a travel planning site – we are not a technology or social networking site. Our readership is wide and varied and for sure we have some members who are very active on social media, especially Twitter, but most members are either not into it, or have chosen not to share that side of themselves.

Why keep Facebook?
Because just about everyone has an account.
Because despite the regular moaning (including from me) it is pretty easy to master – just don’t start farming.
Because it is now our #2 source of traffic (after Google) having recently surpassed Yahoo!
Because the seamless way it allows people to share content is miles ahead of the other networks.
Because it loads asynchronously by default.

What about the other networks?
I’m a heavy Twitter user and it is absolutely my preferred network. So just use it as I do:

Cut and paste the URL into whichever client you use.
Shorten it.
Think about a suitable title.
Compose some snippet to sum up your thoughts to go with it.
Hit send.

Your followers will love you for it.

To those who may say, but now it’s too difficult to share your content, I reply, well, if the above is too taxing, perhaps the content really isn’t worth you making the effort to share it.

If you do want to share it, you still can — and we’ll love you for it!

How high do you bounce?

Bounce rate is defined by Google as “the percentage of single-page visits or visits in which the person left your site from the entrance (landing) page.”

What this means is it measures the number of visitors who arrived at a page and went no further into your site.

A bounce need not mean something bad. The visitor may have landed on a page that completely answers their question, may have clicked on an advertisment or perhaps just got up to go make a cup of coffee and forgot to come back.

It can though also reflect a poor reader experience — people arriving at your site and finding the content just doesn’t answer their question, or perhaps your website doesn’t look right in their phone or browser, or stories are overly paginated, or the colour scheme is awful or any number of other reasons that would generally connotate a “thumbs down” experience.

Some site styles, such as blogs, often have a higher bounce rate due in part to a combination of reader behaviour and poor site architecture, with others though, for example affiliate landing pages, the whole purpose may be to send the reader elsewhere.

So keep that in mind.

For a general content site like Travelfish.org, bounce rate matters. It matters because reading a single page on Travelfish is not going to answer every question you have about travel in Southeast Asia! There is always another question that can be answered or further information that can be imparted.

With that in mind I’m going to write a bit about three areas where we see a bounce rate that is significantly higher than the overall site bounce. I’m slowly making changes to address some of the worst offenders!

But first, how to measure it. We use Google Analytics for most of our statistics needs and, with a bit of refinement you can get some useful bounce data out of it.

You can also use this data to pick your battles. There is less value in spending 12 hours rewriting a page that gets 4 visitors a day and has a bounce of 80% than a page that gets 4,000 visitors a day and has the same bounce rate.

Note also that not all bounces are equal. A bounce with an average time on site of five seconds suggests “Recoil, evacuate!!!” while a bounce with an average time on site of five minutes suggests “Thanks, that really answered my question.”

So pump up GA and click on the “Pages” tab under “Content”. This will give you a chart showing you your ten most popular pages with time on site, bounce, exit etc.

Then click on the advanced filter, make the average time on page less than say 90 seconds and the bounce rate over say 60%. (Obviously select variables that fit with your readership).

This will give you a list of pages that people spend an average of under 90 seconds on, with over 60% of them leaving your site. Order the result by pageviews, increase the number of results to 50 and you’ve got your homework for the week!

Each of the pages may be bouncing for a different reason, but in Travelfish’s case, three of the main reasons (in no particular order) are:

1) Question is answered
2) Unanswered forum questions
3) Blog pages

Question is answered
Just one example area for this, we have hundreds of FAQ questions on the site. Stuff like “Are the ferries in Thailand safe?” or “Can I use ATMS in Thailand”, or “Can I use drugs in Cambodia?”

Each of these can be answered with about three words. (in the above cases, Mostly. Yes. Yes, but don’t.) What this means is if the person Googles “Are the ferries in Thailand safe?” and they get sent to our page, then they’re going to get the answer in about 6 seconds, and unless we do something about it, they’ll leave.

So what can you do?

We’re in the process of expanding pages like this to try to second guess other questions people may have. Again staying with the above, we could suggest “Extra reading” along the lines of:
Popular Thai ferry routes
Photos of Thai ferries
What ATM fees are there in Thailand?
What cards do ATMs accept?
Are drug overdoses common?
What penalties are there for drug use?

And so on.

Obviously this can be a bit hit and miss and not all topics can easily have more topics associated with them, but you’d be surprised just how many can.

Assumming the extra answers you’re providing are accurate, useful and value adding, then you should start to see bounce rate reducing.

Unanswered forum questions
We’ve got around 15,000 questions and 70,000 answers on the Travelfish forum. And while most questions now eventually pick up an answer or three, some don’t, and this was especially the case with the older questions, when we didn’t have quite as many active readers as we do now.

The “problem” is that many of these unanswered questions have been well indexed by Google, and visitors continue to Google “How do I get from A to B on a Tuesday by horsecart”, and get sent to us, where there is a question that exactly mimics the search query, but unfortunately has not been answered.

This is a poor reader experience. I find it annoying when I Google something only to be sent to a page that asks the same question but has no answer — and I find it doubly annoying to be subjecting others to that same problem.

There are two obvious approaches to this:

a) Mark as NoIndex/NoFollow any forum thread that doesn’t have at least X number of answers. This means Google will not index the question until someone answers it.

b) Go back through and answer the unanswered questions.

I’ve slowly been following the second option. Adding a post at the bottom saying something along the lines of “This is an old thread but if you end up here, here are some links for further reference. If they don’t help. please ask the question again on the main forum” And then I lock the thread, meaning no more comments can be added.

With the first method, the bounce should drop off severly as you’ll stop getting any search traffic to these pages, with the second you’re trying to steer readers to other parts of the site. If we don’t see a significant drop in bounce we’ll switch to the first method, but for now, answering and locking seems to be helping.

Blog pages
Trying to drag blog readers onto other entries or further into the Travelfish site, has been somewhat of a struggle, but we’ve been lucky in that with ten nearly identical looking blogs layout wise, we were able to test different features and plug-ins to see what worked and what didn’t.

Currently we’re doing the following:

Interlinking blog posts with in-context links
We do this both within each blog but also across to the greater Travelfish site.

Related posts
We use YARRP and it is excellent. Easy to configure and doesn’t use images. We position it at the end of the story and in early testing, saw an 8-10% clickthrough rate.

We use search-meter with it positioned after the related posts and before the Facebook dialogue. Search Meter allows you to easily track what people are searching for which in turn can be very helpful for new story ideas and highlighting gaps in your coverage.

Popular posts
A simple Top 10 plug-in in the left column that displays, you guessed it, popular posts. If others liked them, perhaps the next reader will too!

The above are but a handful of means to approach bounce rate. The “correct” approach will depend on your style of site and what you’re trying to do with it.

Every reader counts and if it is raining outside and it’s tackling bounce rate or doing month-end accounts, I know which I’d rather be doing.

Got a suggestion? I’m all ears!

PS I know I said I was going to be writing about sprites, but I put my back out through the week and wasn’t up to figuring all that out. Will do soon though!

Speeding up Travelfish.org part 1

A common refrain regarding Travelfish has been that the site is slow. People using the site would complain, Google would tell be at every possible opportunity it was slow (apparently about 80% of the sites on the web were faster) so over the last couple of months, as time has allowed, I’ve been reading up on what’s involved and slowly making changes to the site.

This is a bit of a work in process, but I thought I’d blog it as others may have some useful suggestions … plus the power is out so I’ve got nothing else to do but run down the laptop battery.

Broadly speaking there are four main choke points:

A picture says a thousand words
And a picture is about a thousand times the size of a single word.

Getting close to your readers
Using a Content Delivery Network (CDN) to make sure that your files are being served from a data centre close to your readers.

Don’t ask too many questions
An average browser is configured to request no more than 8 files simultaneously.

Doing the loop the loop
Optimising your database code and following best practises in your scripting. Caching is your friend.

But what’s the point?
Well if someone is motivated enough to email me to complain about the site speed, then it just needs to be addressed. How many others just left.

Travelfish.org is in part an advertising-supported website. What this means is that in some cases the more pages people look at, the more they learn and the more we earn. For a content site like Travelfish, the mantra seems to be the faster the pages load, the more pages people will read. Makes sense really — do you look forward to returning to a restaurant with glacial service?

Since we added the destination blogs earlier this year, the overall site bounce rate has increased significantly. In part due to their design, but also reader behaviour, blogs tend to have higher bounce rates than a “normal” site. Again this is something I hoped to address through speeding up the blogs — the faster I can load a page, the more chance I have they’ll see something else of interest. I also made some changes specific to the blogs to assist readership, I’ll be covering that in the coming weeks.

So in summary, in speeding up the site we’re hoping to address an issue readers have complained about to help them get the most out of the site. While simultaneously improving our bottom line.

So what have I done so far?
I signed up with Amazon’s S3 and Cloudfront Content Delivery Network. This allows me to store files on their servers (which are considerably more powerful than my setup) and make use of their CDN.

This is a double whammy in that S3 is fast and Cloudfront, with data centres in the USA, the EU, Tokyo and Singapore means that my files are being served a good deal closer to you. (The actual Travelfish.org server is in Texas, USA.)

While I haven’t shifted all the files yet, I have moved a lot, including many of the images, all the Javascript and all the Stylesheets.

Making this change alone, improved load time on my main testing page (http://www.travelfish.org/country/thailand) from over 11 seconds to under 3 seconds.

Not bad.

S3 and Cloudfront take a bit of getting used to, but Labnol has a fabulous set of S3 tutorials that were of immense help. There’s also a S3 Firefox plugin that is very helpful. And, for WordPress users, Tan Tan Noodles has a near perfect WordPress plugin for S3 image uploads.

I am stuck on one thing though in this area. When I upload an image to S3 I can set an expiry date long in the future (this assists with caching) and when I request the image from S3, the header is correct. BUT when I request it from Cloudfront, no expiry date is set. I’ve been trying to find an answer to this problem to no avail — suggestions welcome 🙂

Update at end of the entry regarding the above point.

Don’t ask too many questions
If you look at the output from Pingdom for the subject page, you’ll see there is a stack of files being requested. This was my next target.

I started with the javascript files — there used to be four — and combined them into just two files (one needs to remain separate as it is not always loaded).

That was easy.

I also looked at some of the third party javascripts that were being loaded. A World Nomads one related to their select box was a bit sluggish so I grabbed the script and uploaded it to S3. One note on this is I’ll have to check back occassionally with Nomads to make sure I have the most up-to-date file to keep this working properly. I’ll probably do the same with AWeber which can sometimes really bog down the load, while Reinvigorate I plan to stop using, so will just remove it.

The other third party scripts, Quantcast, Facebook, Google Analytics are better left on their respective servers.

In reducing the number of requests I’m not only building a faster site, I’m also saving myself money. Amazon charges for the S3/Cloudfront service in part by request and my last bill charged me for almost four million requests. (Don’t panic, the bill was under $10). But essentially what Amazon is saying it is in everyone’s interests — mine, Amazon’s and Travelfish.org readers — to keep the total number of requests down.

Talking about requests, the next step (which I’m starting on this week and will write about next week) is all about reducing them even further — with Sprites.

So many pretty pictures
Many of the icons (stars, checkboxes,flags etc) on Travelfish.org could be combined into a single file and displayed using CSS. The process is called sprites and there’s an old but good general wrap on sprites at alistapart.

Basically if you have 30 images that are common on many pages, you combine them into one and reference different parts of the single image to display the icons it contains. In this example this effectively reduces the number of files you are requesting from 30 to 1 and probably results in a lower overall filesize as well.

Optimal images
There are a number of online services you can use to optimise your web images. This generally revolves around stripping out data that isn’t needed (eg EXIF blah blah) and making the image file as compact as possible. Travelfish.org has around 15,000 image files on it, so I’ll be saving this one for the wet season.

Often the file saving is nominal (in hundreds of bytes rather than thousands), but every little bit counts — especially when you have an image being served thousands of times a day, 365 days a year.

Code reworking
Travelfish is all handmade, by me, and it generally works. I’m not bragging, but rather saying I could make a glider as well, that would probably fly — but it sure as hell wouldn’t be the Concorde.

I’ll be the first to say there is significant grounds for improvement in this area, especially with regard to caching — but as this will be different for every site, there’s little point in going into it here. The other points above though are applicable to any website.

Amazon S3
Amazon Cloudfront
Labnol’s tutorials
S3 Firefox plugin
WordPress plugin for S3 image uploads
alistapart on sprites
Pingdom results on the sample page

Next week, sprites and WordPress readership helpers.

Thanks to Carl Hancock for pointing me to this entry regarding Cloudfront and S3.

It points out that Cloudfront doesn’t rerequest the file from S3 unless the filename has changed. I’d been updating the Expire Headers on the image on S3, but the file had already been called across to Cloudfront – so the revised image wasn’t being called.

What I need to do is upload a renamed version of the file to S3, change the expire header, then upload a new version of the HTML file that requires the image, using the new image name — this (in theory, I’ve not tested it yet) should result in the new image being pulled over.

Tedious, but better to learn this now rather than after I’ve uploaded the other 10,000 images!

Second update
So having tested the above, it does indeed work — so I wish I’d posted this entry before I uploaded all the images I did — as now I have to rename all of them… doh!