18 Years Old
Make it 18 years old, without any hyphens (New Paper, 9 August 2011).
The rule to remember here is that if the compound adjective comes before the noun, it should be hyphenated (as if to show it functions as a single adjective), and that the unit of measure is singular (year): an 18-year-old student.
However, if it comes after a linking verb (in this case be), it loses the hyphens and the unit of measure becomes plural: He may only be 18 years old. (Pedants might also point out that only should precede 18 rather than be, since it modifies the age rather than the verb.)
If used as a noun in its own right, it is hyphenated: Even as an 18-year-old, Jim was incredibly mature for his age.