Melissa Smith, had gone with her two sons to Sainsbury's to buy a new toy with their pocket money. Louis, six, and Theo, four, picked up a velcro catch toy, and went home to play with it that evening.
But after leaving it in the garden overnight, Melissa picked it up the next morning and found the plastic casing had come away – and she was disgusted to discover what was hidden underneath.
The £3 toy, from the supermarket's Bridgnorth store, revealed a cartoon image of a boy along with a swearword.
Melissa, 29, said: "They'd had some pocket money from their nan, so we went to Sainsbury's so they could pick out a new toy.
"They chose a velcro catch game and we came home and they spent all evening playing with it.
"They left it out in the garden, and it rained overnight – when I picked it up the next morning the plastic casing had come away, and the velcro piecing was separate.
"I didn't think anything of it, and just put it on the side. But when I came home later, I looked at the toy and saw on the back it said the word.
"I was horrified – you don't expect to see that on a kid's toy.
"Louis can read, he knew it was a bad word and started saying it.
"We've told him to stop because it's not a nice word, but the boys go to a Catholic school and I'm worried they might start blurting it out there.
"We live in a nice town and they've never been exposed to that kind of language before.
"I guess it is a bit funny – but still, it's awful that it's on a children's toy."
Melissa took to social media to vent her frustrations on Sainsbury's Facebook page – but she was left fuming after the company ignored her posts.
Melissa, a delivery driver, said: "I posted a picture of the toy on the page, along with a comment – but then it disappeared.
"I sent other messages, but they kept disappearing too.
"We had to keep commenting on loads of other posts to ask why they weren't responding to us – I think they were just ignoring us and deleting all the posts.
"We're not very impressed with Sainsbury's at all – not only did the toy have a hugely inappropriate word, but it broke after just a few hours.
"They've still not resolved the issue – they just say that they're looking into it and trying to get in touch with the manufacturers.
"We've not even had an apology."
Sainsbury's has been approached for comment.