This question already has an answer here:
Say I want to buy a bond that matures in 10 years, and that pays out 5% of once a year, so it has 10 payouts remaining. Say the value is 100$. Say the bond is being sold for 140$ today. I would be paid a total of 150$ (10x 5% + the 100), and put in 140$. This means that over the course of 10 years I make 10$ on an investment of 140$, which equates an annual rate of 0.69%. This is clearly terrible. Yet most of the actual bonds I can buy at my broker lead to these kinds of figures. Why would anyone buy these products given the extremely bad returns?