Is this website, https://oyster.tfl.gov.uk/oyster/link/0005.do, the best place to purchase an oyster card? Do you agree that a regular oyster card is better than a Visitor Oyster card for 4 day visit to London, although oyster card is being phased out, I hear? How long does it take for the card to arrive in U.S. (state=Maryland) after ordering online? I'll be in London mid-July (next month).
If you are arriving at Heathrow, there is a TFL desk to the right of arrivals.
If you are arriving from Gatwick and then by train from Victoria Station, just go to the Underground station and buy your card there.
As said above, no need to buy (and pay more) online. Are you traveling alone, if not you could save money on the 2 for 1 deals.
http://www.daysoutguide.co.uk/
Agreed that you should buy Oyster Cards in person, either for a cash amount to debit down at the best rates wherever you go, or to store a 7-day TravelCard (32 pounds for zones 1-2). If you're using Tube to/from Heathrow, that's in zone 6.
Thank you all for your replies. I'll buy it when I get to Heathrow airport. Yes, there is more than one in our party, so If they have 2 for 1 deal, that would be great :)
Oyster cards ARE NOT good for the 2-4-1 deals. You must buy a PAPER travel card from a NATIONAL RAIL STATION to make use of those deals. You will need a passport sized (not quality) photo for the free id card, also.
I suggest buying a single trip ticket for your trip from Heathrow to near your hotel. Then go to the nearest Rail Station and buy the travel card. You can then get a single ticket for the trip back to Heathrow (unless you choose to get zone 1-6 cards).
Thank you Toni for your suggestion.