It initially consisted of the county of Perth, excluding the townships of Fullarton and Hibbert, but including the city of Stratford, the town of Mitchell, and the part of the village of Tavistock that lies in the county of Perth.
In 1947, Perth riding was redefined to consist of the county of Perth, excluding the townships of Fullarton, Logan, and Hibbert but including the city of Stratford and that part of the village of Tavistock contained in the township of Easthope South.
In 1952, it was redefined to consist of the county of Perth, excluding the township of Hibbert but including the city of Stratford and that part of the village of Tavistock contained in the township of Easthope South.
In 1966, it was redefined to consist of the County of Perth (excluding the Town of Palmerston and the Village of Tavistock), and that part of the County of Waterloo contained in the Township of Wilmot.
Perth electoral district was abolished in 1987 when it was incorporated into Perth—Wellington—Waterloo riding.