Took ds and 2 friends out for the day yesterday. I had tesco vouchers to get into the attraction (theme park) and when I picked them up their nan gave me £10 for each of them. I asked 'is this for their lunch' and she she 'whatever they want'. They had nothing else with them, no suncream (already put on I was told), no drink no snacks or packed lunch.
I had brought a bottle of water for ds and myself and had a spare bottle too. I also had some snacks, crisps & biscuits to share. It was a roasting hot day and we were stuck in traffic for ages. I offered them the spare bottle of water but they don't like water... 
Got to the theme park. £23 each to get wrist bands for them, so £70 in tesco vouchers. I immediately went and got the two boys a bottle of coke each (what they asked for) because it was so hot and they hadn't drunk anything for 2 hours while stuck in a hot car. These cost £2 a bottle.
We had lunch a little while later (£5 for each of them from the burger place - including a drink each) and later had ice cream, more bottles of coke for them. Asked if they wanted candyfloss, more chips etc.
Towards the end of the day they wanted to go in the gift shop. It was full of tat and after wandering around for some 10 mins without finding anything they wanted to buy I explained that we really needed to get on and that actually I had spent more then the £10 each on them already. I even listed out that lunch had been £5, coke bottles £2 each and they'd had 2, plus icecream at £2 which all came to more than £10.
I said if they really wanted something I would get it for them but it needed to be small and they needed to pick it in the next 5 mins as we needed to start heading back to the car.
More wandering around blankly and they didn't find anything they wanted after a further 5 mins, so we left the shop.
Back to the car, paid for parking and headed home. Apart from being stuck in traffic at the start it was an enjoyable day out.
When I dropped them off the oldest asked if they could have their money back. I said I had spent it on their lunch etc but he said they hadn't got anything in the gift shop...
I felt a bit dumbstruck really, but didn't want to spoil the day by arguing the point, so got my purse and scrounged around trying to find £20 in it in change.
At this point their nan came out, said hello etc. I handed over the £20 and she said what's that? I said the boys asked for their money back. She said didn't you spend it, I said yes but they were asking for it. She took the £20 and gave them £5 each and gave me £10 back. Then their mum came out, said thanks for talking them etc. Off I went home with ds.
Now I had taken £65 in cash for the say plus £70 in tesco vouchers and came home with £12 (this included the £10 she had given me back - so I spent £133 on the day out).
AIBU to think next time I should just give them their £10 each and tell them to buy whatever drinks and or lunch they want with their own money and when it's gone it's gone!?