Because they are meant to be an expensive short term solution to raise funds. Overdraft facilities exist to help companies get cash quickly but they are not supposed to be used as a long term funding source. In addition, the overdraft limit is set based on the creditworthiness of the company but there is no actual collateral for overdraft in case the company defaults (no fixed or floating charges). So for the bank, overdraft is riskier so it’s more expensive.