I'm stuck with BT at the moment, because my exchange hasn't been upgraded to allow for LLU providers yet. Max 8Mb, I'm so close to the exchange I could urinate on it from my front door but BT keep resetting my line to 2.5Mb. 3 months of shouting at asians and all I can do is phone their freephone number every week and get my profile manually set higher again, which their automated system nerfs within 3 days. Added to that, they actively cap your speed at peak times far beyond what heavier local traffic would cause, and they throttle your P2P transfers like nobody's business. µtorrent's encryption helps somewhat, but not much.
Things to check:
How far are you from the exchange? That's the green box.
Is the cabling taking the phone connection into your house black (good) or grey (bad)?
Is your router plugged into your home's main phone socket? If not, how many extensions are there and how many are in use? Are they daisy-chained (good) or starred (bad)?
Check your router settings (default 192.168.1.254, on the home hub go to Settings -> Advanced Settings -> Broadband -> Adsl) and check your downstream, attenuation and error seconds.
This'll give you a good idea if it's all BT or if your home's rubbish for broadband.
On this topic, where can I find my synch rate on the router page? Would it be named something else?