You can do the whole process off-chain using OpenTimestamps and taproot commitments if you wanted to.
The people using inscriptions don't care about efficiency though :( They want it all on-chain, for reasons beyond my understanding.