Keccak is Sponge-based hash function:
[Image taken from the official sponge page]
It has a large internal state, and iterates this with a permutation (that for theoretical proofs we model as an ideal permutation).
The total state of Keccak is $s=r+c$ bits. Because the user can only ever read from or input data into the $r$-section of this (the 'rate component of the state'), a user cannot directly modify the capacity component of the state. It turns out that the security of the construction boils down to avoiding internal collision on the capacity component (which is $c$-bits wide). That is, we require that the capacity component of the state never takes the same values twice and due to the birthday bound, this happens after around $2^{c/2}$ blocks.
So, for provable security, we need $c$ to be suitably large. However, the input and output is always at rate $r$.