The original building was a modest rectangular nave with a small, straight-ended chancel, its rough stone walls partly lacking a foundation course. A simple south doorway with a plain granite lintel provided the entrance. During the medieval period a timber porch and later a sacristy area were added, and the church's small original windows were later enlarged.
At the end of the 1600s the church, then in poor repair, was substantially altered: the old chancel was demolished and the nave extended eastward, nearly doubling its length, with the work partly funded by Jöran Rutenskiöld, commemorated in wrought-iron lettering and the date 1687 on the new east gable. A new stone porch replaced the timber one in 1710, and further porch-building took place on the west gable during the 1800s.
By the early 1900s the parish considered demolishing the medieval church altogether in favour of a larger building, following the example of a neighbouring parish that had replaced its own old church with a large new one. Officials found the structure neglected but structurally sound, and permission to demolish was refused. Instead a more substantial restoration went ahead in 1930 under local builder Arvid Johansson, adding a new west tower, a sacristy with a boiler room, entirely new fittings, and removing both older porches. During this work, faded decorative wall paintings were rediscovered near the nave's north windows, including a motif with runic ornament.
The church's principal artwork is its painted ceiling, created in 1744 by Lars Hasselbom of Lidköping, including a scene sometimes referred to as 'Petri knyte'. The altar is built of stone topped with a polished limestone slab, and the altar decoration in carved and painted wood was reportedly a gift from Rutenskiöld and his wife. The pulpit, boldly painted and partly gilded, dates from 1709.
A stone font in two parts, damaged over time with part of its bowl replaced in wood, is thought to date from the first half of the 1200s and has been linked stylistically to fonts at nearby churches. Fragments of a carved medieval grave-marker known as a 'liljesten', along with several older gravestones bearing faded inscriptions and dates, survive in and around the churchyard, offering visitors tangible traces of the parish's long history. The churchyard's stone wall and gate date from the late 1700s; an earlier freestanding bell tower, documented from the 1600s and rebuilt in 1765, was demolished in 1940 after its bells were moved into the new church tower in 1930.