Why a custom ROM?

I own a Nexus 4 and a 2013 Nexus 7, both running stock 4.3, and have never really been curious about flashing a custom ROM until recently. Is there any really good reasons why one would flash a custom ROM? A quick pro/con list would be very helpful.