This might be controversial, but it's very hard to have negotiations in good-faith with a company for services, and drive a hard bargain, if the company knows that the pricing offered to government can be FOI'd by a rival or other customer, to get granular price offered.
If you want to get the best value for money, and get below list price, you need the ability to have a commercial negotiation, with the confidence that granular pricing information (i.e. emails with discounted price lists for government customers) aren't becoming public.
That's not to say the total amount spent should be kept secret, but if exact breakdowns of unit pricing were going to be made public, it would likely cost the public more in the inability of government to negotiate around price with suppliers (or rather their unwillingness to enter into such negotiations)
Similarly, any kind of serious negotiation needs to have secrecy - it's very hard in a practical sense to have a negotiation with a party that has to (or might be forced to) publish everything. The number of startups (and even larger companies) that do everything as price-on-request should show industry's willingness to see the kind of price tarnsparency that FOI would expose. And that would give the taxpayer poorer value for money in the long term.