The farmer has 30 chickens & rabbits altogether. There are 86 legs in total. How many rabbits are there?

Let's assume that the farmer has x chickens and (30-x) rabbits.

Each chicken has 2 legs, so the total number of legs from the chickens is 2x.

Each rabbit has 4 legs, so the total number of legs from the rabbits is 4(30-x).

The total number of legs from both the chickens and rabbits is 2x + 4(30-x).

This equals the total number of legs, which is given as 86.

So, we can set up the equation: 2x + 4(30-x) = 86.

Expanding this equation gives: 2x + 120 - 4x = 86.

Combining like terms gives: -2x + 120 = 86.

Subtracting 120 from both sides gives: -2x = -34.

Dividing both sides by -2 gives: x = 17.

So, there are 17 chickens and 30-17 = 13 rabbits. Answer: \boxed{13}.