Maturity plays a great part in knowing whether or not you're ready. People mature at different age. Some at 18, while some matures late into their 30s or even 40s, lol.
Also making sure you are spiritually and emotionally ready for the roller-coaster of joining your life with another. And don't forget, the 'money part', don't get married unless you're ready to take care of 'the bills'.
Marriage takes 'WORK', so if you're the type who bails out easily, or expect the other person to do all the work, then you may be better off with your parents, living in their basement, permanently. Because marriage is not for the lazyboy type.
So I'll say, marry when you know you can take the heat. It's a lifetime commitment.