pull down to refresh

If people storing data in the witness script can do it more cheaply than having the data in OP_RETURN, why wouldn't they just continue to do that?
I would refer to Sjor's reasoning
I'm simplifying terribly, but I think the general issue is that putting the data in the witness makes syncing and validating the chain harder for future and current node operators. Validating each transaction requires checking it against all unspent transaction outputs from the entire blockchain (utxo set.) These have to be kept in memory by the nodes forever. If you can avoid having every node add to this with something that's in fact unspendable and only meant to record data, it makes validation quicker and nodes are cheaper to operate. It's a tragedy of the commons situation. Obviously the utxo set is going to grow regardless, but we might as well not encourage it to get worse by needlessly adding outputs that can never be removed.