SR 307 begins at a tangent intersection with US 460 (Prince Edward Highway) at the hamlet of Rice in eastern Prince Edward County between Farmville and Burkeville. The state highway heads east and intersects SR 617, which heads north to Sailor's Creek Battlefield Historical State Park, which preserves the site of the Civil War Battle of Sailor's Creek. East of SR 617, SR 307 crosses the northwestern edge of Nottoway County. The state highway enters Amelia County shortly before reaching its eastern terminus near Jetersville between Burkeville and Amelia Court House.