Vitamin D plays an important role in skeletal health throughout life. Some studies have hypothesised that vitamin D may reduce the risk of other diseases. Our study aimed to estimate age-specific and sex-specific serum 25-hydroxyvitamin D (25(OH)D) status and to identify the determinants of serum 25(OH)D status in Hong Kong, a subtropical city in southern China. In 2009–2010, households in Hong Kong were followed up to identify acute respiratory illnesses, and sera from 2694 subjects were collected in three to four different study phases to permit measurement of 25(OH)D levels at different times of the year. A questionnaire survey on diet and lifestyle was conducted among children, with simultaneous serum collection in April and May 2010. The mean of serum 25(OH)D levels in age groups ranged from 39 to 63 nmol/l throughout the year with the mean values in all age groups in spring below 50 nmol/l. Children aged 6–17 years, and girls and women had significantly lower serum 25(OH)D levels than adults, and boys and men, respectively (all P< 0·001). We estimated that serum 25(OH)D levels in Hong Kong followed a lagged pattern relative to climatic season by 5 weeks with lowest observed levels in early spring (March). For children aged 6–17 years, reporting a suntan, having at least 1 servings of fish/week and having at least 1 serving of eggs/week were independently associated with higher serum 25(OH)D levels. Adequate sunlight exposure and increased intake of dietary vitamin D could improve vitamin D status, especially for children and females in the winter and spring.