Limit orders are free to make on Matcha because of how limit orders operate with 0x Orderbook API.
Unlike other decentralized exchanges that solely operate on-chain, such as Kyber, Oasis, and EtherDelta, 0x does not store orders on the blockchain. Instead, open limit orders are stored off-chain, and only the trade settlement occurs on the blockchain. This unique feature of 0x protocol's flexible architecture is what allows Matcha to offer free limit orders.
When your limit order fills, the transaction settles on-chain, and the taker of the order pays for the transaction's native network fee.
Limit Order Features:
You can set limit orders to expire in
1 hour (default)
You can cancel a limit order at any time.
This will require you to pay a small amount of gas to cover the cancellation transaction's gas fee.
Orders with set expiration times will automatically cancel at no cost.
For more information on the difference between limit orders and market orders, check out this help article.
More information on 0x protocol's off-chain relay, on-chain settlement architecture
If the maker of a 0x order already knows their desired counterparty, they can send the order directly to them (i.e., via any messaging system such as email, chat, or over-the-counter). If the maker doesn't know a counterparty willing to take the other side of the trade, the order can be submitted to a 0x relayer, such as Matcha or MetaMask. A "relayer" is any entity that helps traders create, find, and fill 0x orders.
Once someone finds and wishes to fill the 0x order created by the maker, they can fill it by submitting the order, along with the amount they want to fill it for, to the blockchain. The 0x protocol's settlement logic will verify the maker's digital signature and that all the conditions of the trade are satisfied. Once satisfied, the tokens are atomically swapped between the maker and taker directly into their wallets.