Uniswap is one of the largest decentralized exchanges that allows anyone to trade crypto assets and provide liquidity to earn trading fees. Uniswap v3 is the latest version that supports ERC-721 tokens, introduces a new concentrated liquidity model, and includes a flexible fee structure.
Uniswap V3 is an automated market maker (AMM) that introduces the concentrated liquidity model. Concentrated liquidity is a new AMM model where liquidity is allocated within a custom price range. Previously in V2, liquidity was distributed between 0 and infinity, uniformly along the price curve. V3 allows liquidity providers (LPs) to concentrate their capital on smaller price intervals or ticks. This offers traders deeper liquidity and allows LPs to earn more with less capital required. However, this also increases impermanent loss as rising and falling asset prices can result in the position's liquidity being out of range (e.g. position is fully one asset) and no longer earning fees.
Uniswap makes money via protocol fees that can be optionally turned on by UNI holders through a community governance proposal. Whenever a liquidity pool is created, protocol fees are set to 0 by default. Uniswap could then receive a fraction of these transaction fees. Currently, the protocol does not charge protocol fees and all fees are earned by liquidity providers.
In order to incentivize users to create trading markets on their platform, Uniswap must pay these users who are providing liquidity into these pools in the form of swap fees. Uniswap currently distributes all of the swap fees earned for each pool directly to the liquidity providers that is proportional to the amount they deposited. For Uniswap V3, the fee tiers charged for every transaction are 0.01%, 0.05%, 0.30%, or 1% depending on the specific pool.