The price you mentioned for t-mobile is the prepaid price and those are always going to be more expensive
The month by month is cheaper at 5GB for the same price you are currently paying. For a short time T-mobile had a plan that had 5GB for $40 a month but that apparently was only for a short time and is no longer offered now.
I don't understand why T-Mobile's data plans are so insanely expensive when bits don't cost anything but they cancelled most of their data plans last December. Now the only data plan they have for $40 requires a 2 yr. contract. You can't do much with just 5Gb though and I'm currently using about 11Gb a month on wi-fi but that's too slow to stream any movies or TV shows, just email and browsing the web. BTW, I was using the "Unlimited Day Pass" that costs $1.49 per day to run the tests but you only get about 30Mb with their "Unlimited" plan so it only worked at full speed for about 1/2 hr. before I was throttled back to about 60kbps.
They used to have some $40/mo no contract plans and I was originally going to get a no contract plan but they were all cancelled last December. Now all they have is a $40/mo 5Gb/mo plan that requires a 2 year contract and a pre-paid plan that gives you just 1G/mo for $50 that is insanely expensive. At that rate it would cost $200 just to watch a movie on Netflix. The plans seem to keep changing every week though.