START NOW! There is a window of opportunity for ALL kids and it closes around 23mos. My boys were both out of diapers by 15mos (youngest) and 19mos (oldest). We used elimination communication, and it was easy, stress free, and they were well within the window.
Babies are born with the ability to hold their bladder (I'm sure you've been peed on by a newborn boy.... all at once and it doesn't stop!), but over time and sitting in an ultra absorbant diaper for years, they lose that ability and it must be relearned. If you catch your child before that bladder control is lost, you will be way ahead of the game, and doing your child a favor, and yourself, by not waiting until your child is way too old to be in diapers and you are fighting with a strong willed child who can argue. Start now, be positive and upbeat, encouraging, and expect accidents because regardless of whether you train a 20mo old or a 4yr old, you WILL have accidents. He's a copycat and very much wants your approval right now, he doesn't argue much, so start now, make it a fun game, set a timer, take a couple weeks and go for it. You will have him into undies in no time.
And can i just say nothing irritates me more than people who say boys train later, boys are slower, blah blah. Yes, your child WILL train late if you allow it! If you allow your child to sit in diapers until they tell you they have to pee, you WILL have a 4yr old in diapers. I have two boys, and they were so easy to get out of diapers because we didn't allow them to sit in diapers for years believing they were too dumb to train! I think people use that as an excuse to not have to put any work into training their child, that boys train late. Its so irritating when I read it over and over on here because its simply not true.