As a boy, I'll do boys. The poster above me is just wrong.
Frosh:
Premier, top of the line: sub-16.
Insanely talented: 16-17:00
Great: 17-18:00
Good: 18-19:30
Pretty good to average for a skinny kid: 19:30-21:00
Mediocre: 21-23:00
Bad: 23:01+
Sophomore:
Premier, top of the line: 15:00-15:30
Insanely talented (now just fantastic): 15:30-16:10
Great: 16:10-17:00
Good: 17-18
Pretty good to average: 18-19:30
Mediocre: 19:30-21
Bad: 21:01+
Junior:
Premier, top of the line: 14:30-15:15
Fantastic: 15:15-15:50
Great: 15:50-16:30
Good: 16:30-17:15
Pretty good: 17:15-18:30
Mediocre: 18:30-20
Bad: 20+
Senior:
Premier, top of the line: 14:30-15
Fantastic: 15-15:35
Great: 15:35-16:10
Good: 16:10-17
Pretty good: 17-18
Mediocre: 18-20
Bad: 20+
This is realistic for dedicated skinny runners, obviously not everyone who runs cross country. What most people will call "good" on letsrun are about 10 people per class. The people running the premier times I listed per class are the best in the country. You can stil be good and run 2 minutes slower than the best.