Luckily Saint-Petersburg is not as expensive as Moscow but I wouldn’t say it’s a really budget place for tourists, rather you should expect average European prices. For example, a double room in a mid-range hotel is from 100 – 140$ per night ( and it will be higher during the peak « white nights» season).
A meal in a fast-food like Mc’Donalds will cost you approximately 5-7$, to dine in a mid-range place you will need at least 15$ per person. For the tickets to major museums in St Petersburg are expensive – you will have to pay about 12$. Transport is cheap – a single metro ride is about 85 cents and a tram/bus ride approximately 70 cents.
Keep in mind that credit cards like Visa and Mastercard ( other types are not that popular in Russia) are often accepted in tourist places ( cafes, hotels, etc) mostly in big cities like Moscow or St Petersburg, but do have some cash with you to pay for transport, tickets to some museums, etc. Only Russian rubles are accepted for payment in cash. You may have a lot of trouble with travel cheques so it’s better not to use them at all.