The aim of this study was to measure bird numbers and species richness in upland spruce forests in relation to forest habitat variables, as a basis for a computer model to predict how bird populations were likely to change under different forest management regimes. In each of the two study areas, at Cowal, Argyll and Kielder, Northumberland, 88 study plots were selected randomly from 24 combinations of tree age (0–8, 9–15, 16–25 and over 25 (mainly 25–50) years), plot size (1–2, 2.1–5 and over 5 ha) and elevation (above or below 250 m). Both pure Sitka spruce Picea sitchensis and mixed conifers were included, as were first and second rotation crops. Point counts, at up to five per plot, were used to estimate bird populations and in larger plots, additional edge points allowed the comparison of plot centres and edges. Counts were made from 1990 to 1992 in winter (mid-November to mid-March), early spring (mid-April to mid-May) and late spring (mid-May to mid-June). Each plot was visited once in each period. The counting method gave consistent results both within and between days at the same counting points. There was strong and significant variation in bird numbers and species richness with tree age, both being highest in older trees in winter and in 9–25 year old trees in spring. All of the common species—chaffinch Fringilla coelebs, coal tit Parus ater, crossbill Loxia curvirostra, dunnock Prunella modularis, goldcrest Regulus regulus, meadow pipit Anthus pratensis, robin Erithacus rubecula, redpoll Carduelis flammea, siskin Carduelis spinus, song thrush Turdus ericetorum, tree pipit Anthus trivialis, wren Troglodytes troglodytes and willow warbler Phylloscopus trochilus—showed significant variation in their abundance between tree-age categories, with all except the meadow pipit having lowest numbers in the youngest trees and their highest in 9–25 year old trees. There was little detectable effect of plot size, altitude, admixture of other conifer species or planting generation on either bird numbers or species richness. The number of individual birds detected was consistently higher at the edges than in the centres of the same plots, particularly in the first 10 m from the edge, but the type of habitat outside the plot had little effect on this. Spring numbers of most of the common species that were also resident in winter were significantly correlated with their winter numbers, but the correlations were weak (particularly in 1991/1992) and had little predictive value. The two study areas and the 2 years were similar in the way in which bird numbers and species richness varied with forest characteristics, suggesting that the conclusions may be of wide relevance. Bird numbers tended to be higher in 1991 than in 1992, owing mainly to there being more crossbills and siskins in 1991, when there was a very large cone crop. The study clearly identified tree age and closeness to the forest edge as the two main factors affecting the number and species richness of birds in upland spruce plantations. This suggests that the greatest number and variety of birds could be encouraged by creating mosaics of small patches (i.e. with a high ratio of edge habitat), with a mixture of tree ages, including a large proportion of 9–25 year old trees.