A little spilt milk was enough to ensure Tesco snatched victory from Ocado in this month's Grocer 33 online shopping survey.

Tesco offered an excellent delivery service, with our shopper praising the driver for explaining the items on the receipt and making sure they were happy with everything before leaving. It also used the fewest bags and, uniquely, its driver offered to take them away on the same day.

Tesco's performance was slightly marred. Our shopper found the website difficult to register for and browse. And two items were unavailable to order, with no alternatives suggested.

Conversely, Ocado's website was intuitive to use and offered clear product descriptions. It had all the items from our list except the fish pie, but offered inappropriate alternatives beef lasagne and cottage pie. The delivery also arrived without the milk, which had been damaged and had spilt over three other items. The driver told our shopper she would receive a refund.

Asda offered the best alternative suggestions for products that weren't available to order, but its site was slow and on many occasions showed a "temporarily unavailable" message. The basil and fish pie were out-of-stock but our shopper was happy with the substitutes that arrived however the retailer failed to deliver the eggs. The driver also disappointed by failing to smile or offering to bring the bags into the house.

Waitrose had the poorest availability, with four items not listed on its site and no alternatives offered. Loose Conference pears were substituted for the pack, which our shopper was happy with as they were bigger fruits and were worth more per kilo. Waitrose's driver was very pleasant.

The previous winner, Sainsbury's, came last. Three items were not available to order and no alternatives were suggested by the website. Like Ocado, Sainsbury's offers a one-hour delivery slot. Alas, its driver showed up 30 ­minutes late.