I'd say that in British English it isn't even a mild oath. It's companion beginning with 's' is still a little rude, but 'crap' could be used anywhere outside formal English, IMO. I wouldn't hesitate to use it in front of my grandmother, which is my test for acceptability.