The church's core dates from around 1280, a period suggested by the twin-window arrangement still visible in the chancel. It stands as a long nave with a straight-ended chancel to the east, a sacristy added to the north-east and a porch to the south-west. The exterior walls are whitewashed, and the gables are decorated with unusual blind brick tracery, a distinctive architectural flourish for a rural church of this age.
Substantial changes took place around the mid-1400s, when brick vaults were installed and the roof raised. According to an inscription, wall paintings were added in 1503; these are attributed stylistically to two different painters, one associated with the so-called Tierp school and another trained in the workshop of Albertus Pictor. The paintings fill the nave and porch and remain a highlight for visitors interested in medieval church art, though they were plastered over at some point and only rediscovered and restored in the 1930s, when the original chancel windows were also reinstated and fitted with stained glass.
Among the church's furnishings are a medieval communion chalice and two medieval wooden sculptures, one thought to depict Saint Birgitta. The font, carved from Gotland sandstone, dates from the late thirteenth century, while its brass basin was added in 1933. Four brass chandeliers hang in the church; the oldest, kept in the sacristy, was donated in 1666.
The church has two organs of note: a main organ built in 1932 incorporating parts of an earlier 1842 instrument, and a smaller chancel organ added in 1968.
In the churchyard's north-west corner stands a free-standing wooden bell tower built in 1744–45, and the churchyard wall retains two medieval lychgates. A runestone, catalogued as Upplands runinskrifter 1061, stands outside the church.