Adding data parameter to TransferSingle and TransferBatch on erc1155

I need to track transfers in my erc1155 and I'm thinking of using the bytes memory data parameter to add a tag like "insurance_payment" the only problem is that the data parameter doesn't stay on chain, to solve that, I'm thinking in modifying the TransferSingle and TransferBatch events to add a data parameter so I can retreave it later, would that break compatibility with the erc1155 standard?

Yes, that breaks compatibility. The data is only meant to be used to forward to the receiver.

but that would affect someone trying to use the contract?

Adding a data field to events would change the event selector completely. Your contract will stop being ERC1155 compliant and will not be compatible with things like Etherscan, OpenSea, wallets, etc.