Also they have huge amount of economic data, company financials, all somewhat normalised. That’s costly to maintain as I presume it comes from hundreds of different sources. Because these things break all the time. Broken feeds with wrong prices get sent, which require to reload the history when it gets corrected. A lot of google finance price feeds were broken and stayed broken for months They also integrate with trading desks, for instance who send bond pricing runs to their clients via bloomberg. The more banks you are client of, the more reliable your prices in bbg.
There also have quasi proprietary data, like the key terms of pretty much every bond issued in the world, that the issuers or book runners typically double check when they issue a new one. They create generic time series of on the run bond benchmarks, n-th future (which switched automatically when the future rolls), etc.
I am all for competition but agree, steep hill.