In a blockchain setting, finality is reached when a transaction becomes irreversible.
In Nakamoto style consensus, nodes follow the “heaviest chain” rule. Nodes will switch to the chain with the most accumulated work, EVEN if that means reverting already confirmed blocks. This process offers probabilistic finality. After a transaction has been included in a block and a few additional blocks were mined on top of that block, it is very unlikely but not impossible that somebody will invest the necessary amount of work to reorganize the chain and revert the transaction in question. For that reason, services accepting payments on Bitcoin, Ethereum or other Nakamoto style chains will wait for a number of confirmations (additional blocks) before considering a payment to be final.
Other consensus mechanisms offer absolute finality: the guarantee that under no circumstances, a transaction can be reverted once it has been included in a block.
Economic finality is a special kind of finality in proof of stake systems. Economic finality is reached when a reversal of a transactions can be considered extremely unlikely because the supermajority (usually 75%) of signers of a block would face severe economic penalties if they would come back on their decision to sign the block in question.
Additional Details
Fast finality is a desired attribute of a blockchain architecture. Only once a transaction is final, subsequent transactions should be initiated. Be it other blockchain transactions, or the dispensing of a coffee purchased via a crypto payment system.
However, probabilistic finality and absolute finality come with their respective tradeoffs. Systems with probabilistic finality prioritize availability. They will confirm transactions in time, but that confirmation is not always 100% guaranteed. Systems with absolute finality prioritize consistency. An absolute finality chain will stall, should the nodes not be able to reach the necessary supermajority to finalize the next block.
In normal operation, both models will confirm transactions within one block. On probabilistic chains, the user faces the risk of already confirmed transactions being reverted. On absolute chains, the user faces the risk of not receiving a quick confirmation, due to a consensus “outage”. Depending on the concrete use case, one or the other tradeoff might be easier to accept.
In real-life use cases, actors often accept probabilistic finality as part of their everyday business proceedings. A credit card payment, for example, can be reverted under certain circumstances. Many shops will still accept credit card payments as instantly final and hand out the goods or perform the services that their client purchased. In case of a reverted transaction, the shop, the credit card company, or a 3rd party responsible for payment guarantees will try to enforce the payment, reclaim the goods, or book a loss.