There's a bus system between each terminal airside for passengers connecting between flights, and it works quite well. But it is only accessible to passengers who have just arrived on an inbound flight, you can't use it to travel between terminals if your journey for the day starts in London.
There are free landside public buses between terminals, which other have been explaining for you - they are the TfL services and aren't shuttles, they're part of the city's bus network and start from or continue to places miles away from the airport, but serve a couple of the terminals along the way. There are also free landside trains between the terminals (Heathrow Connect/Heathrow Express). Finally if you have a contactless credit or debit card, you can use London Underground trains between the terminals for free.
The key factor is that terminals 2 and 3 are located between the runways and can only be accessed through road or rail tunnels - they share bus and rail stations. Terminal 5 is at the west end of the runways, Terminal 4 is away on the south side of the whole airport complex. You could walk to or from T4 or T5, but the distance between them is over 3 miles.