Tallinn will be more expensive than Prague. Expect to pay 2.0 - 2.5 Euros for a beer in the kind of places that appeal to tourists and you won't go far wrong. In the Old Town prices are probably double this - but the main square is worth it once in you trip if the weather is good (best time is late afternoon after the cruise ships have left).
It's quite hard to find a beer for €2 these days, and in the Old Town? Forget it. If all you want is cheap beer, you're better off in Prague. The Old Town is a bit like a mini Prague anyway, so you may feel it's not a good deal for you.
The OP asked specifically about outside the Old Town, which of course covers a wide area. Stay out of the hotel bars and eg Riis offers A Le Coq for 2.50 Euro (nice restaurant BTW). A little further along Tina Tn and Argo is probably around 2.00 Euro. Much as I like the place, it certainly isn't for everyone though.
The short answer is: no, Tallinn can't compete.
The Czech republic's competitive beer market allows for great bargains for great beer and Prague offers leafy suburbs and beautiful beer gardens to enjoy it in. The beer culture and 'hole in the wall' bars and pubs you find in CZ does not exist to the same extent in Tallinn.
I think JohnTF is right in thinking that it may not be a good fit for you if you are on a trip which is dictated by beer prices. Outside of Old Town, you will still end up paying 2 to 3 euro for a beer.
In saying that, there ARE nice and interesting places to have a beer, inside and outside Old Town, but not where the beer is £1.
@EEWover - Don't you think that bar is a little too far out for tourists?!Edited: 07 October 2012, 17:53
Apologies, I misunderstood.
Hi All - firstly many thanks for your replies. They are much appreciated.
The trip is not solely dictated by beer prices but that will account for a fair amount :-) We like somewhere that is pretty chilled and to an extent picturesque too.
Thanks Oravad. We will only be going for 3 days so unlikely to visit both. Besides it gives us all an excuse to go away again and visit somewhere different! :-)