What Is Off-chain?
In decentralised finance, off-chain refers to software and code that is run outside the blockchain nodes.
Off-chain activities are needed because some activities are not possible or too expensive (transaction cost wise) to handle in a blockchain core protocol or smart contracts:
Computation cost using smart contracts would be too high due to CPU, IO and memory requirements.
Information needs to be fetched for real-world assets or other items that do not have native blockchain data, like centralised exchange cryptocurrency prices. Because blockchains are new technology, most things in the world do not have good blockchain data available yet and off-chain data fetch and validation is needed.
In the future, the amount of activities that need off-chain computation is going to decrease, as blockchains are getting more powerful.
Usual off-chain computation use cases include
Order books run on a centralised server like 0x protocol or DyDx
See also