I usually leave a tip in the order of 15%.
On some occasions, though, it can be much higher. About 10 years ago I realised that I'd be on my own for Christmas Day lunch. I thought about paying �30 or so for a 'bog standard' Christmas Day lunch at a local hotel or pub but I fancied something a bit different. After checking 'Time Out' to see what was open on Chrismas Day, I drove 80 miles to a restaurant in south London which served a mixture of Indian and African food. I hadn't booked but, when I turned up at about 2.00pm they managed to squeeze me in. The decor and ambiance were great. The staff, despite being under pressure were friendly, courteous, helpful and efficient. The meal was probably the best 'ethnic' food I've had in my life. Over a leisurely period of 3 hours (during which I made friends with lots of other diners) I had a starter, main course (with all the extras like popadums, naan bread, etc) and the most expensive dessert on the menu. I also had two of the dearer soft drinks. (The restaurant was unlicensed for religious reasons and I was driving anyway). The total bill came to about �10.50 but the proprietor said 'Let's just call it a tenner'. When it came to deciding on a tip, I thought "I could have forked out 30 quid for a hotel meal that I wouldn't particularly have enjoyed. Instead I've just had a wonderful meal for a tenner". So I left a �20 tip.
Chris