Is anyone using ipfs for static data to get around cross-canister scaling?

Only some of the data used in my app really needs to be in a smart contract. It seems like having state across several canisters adds a lot of complexity and is hard to test atm.

Has anyone just used IPFS to store static data? Would love to hear about your experience if so.