The church was probably built towards the end of the twelfth century, originally consisting simply of a rectangular nave with a narrower, lower chancel to the east, both raised in the same building campaign using large blocks of grey sandstone quarried from Kinnekulle. Traces in the plaster suggest the nave was once covered by a flat timber ceiling, and old oak roof beams survive in the chancel. Two original windows remain, including a small round opening set within a decorative four-lobed sandstone carving in the chancel's east wall, with a carved cross below it on the outside.
Inside the chancel, two carved sandstone reliefs, thought to date from the twelfth century, were built into the walls when the church was constructed. One shows a long-haired human figure grasping a serpent, with two strange beasts above, an image variously interpreted as an earth-goddess suckling animals or as a soul in torment, alongside a scene read as Saint Michael fighting the devil for a set of scales. The other relief, only partly preserved, depicts the Last Supper. Their original purpose and origin remain uncertain; one theory links them to a lost grave monument comparable to that associated with Olof Skötkonung at Husaby church.
A tower was added against the nave's west end in the later Middle Ages, along with vaulting inside the church, and a porch once stood on the south side before the entrance was walled up in the nineteenth century. Wall paintings uncovered in the chancel during a 1921 restoration are attributed by many scholars to the so-called Vittskövle group, associated with the painter Nils Håkansson, working in the later fifteenth century; one unusual scene depicts the Trinity as three bearded faces merged into one, a treatment said to be rare in Scandinavia.
On the north side stands the Oxenstierna family burial chapel, built in brick at the end of the sixteenth century for Bengt Gabrielsson Oxenstierna the elder and his family, its raised tomb slab carved in relief with a knight in armour flanked by his family and heraldic arms. In the north-west corner of the nave lies the Ekeblad family grave, connected to the Stola estate, covered by soapstone slabs; an early twentieth-century inspection found the coffins largely decayed, though one skeleton, unusually large in build, was noted as better preserved. During the 1921 restoration workers also found a small medieval reliquary box hidden within the altar, containing wrapped wooden fragments, which was examined by the Royal Academy of Letters before being replaced.
The church suffered a serious fire in April 1919, which damaged the roofs of both the nave and the Oxenstierna chapel, leading to restoration work in 1921. Two weathered rune stones stand near the church: one, built into a buttress of the tower, bears a fragmentary inscription commemorating a kinsman named Haklång; the other, re-erected in the churchyard in 1936, preserves only the opening words of its original text.