Spur 581 begins at I-35/FM 1583 in Derby. The highway runs to the north, paralleling both I-35 and a line of the Missouri Pacific Railroad, crossing the rail line north of Derby near County Road 3410. South of County Road 3201, Spur 581 passes by McKinley Field before entering Pearsall. Just north of the Pearsall city limits, the highway has an intersection with FM 1582. Spur 581 runs north through town on Oak Street before ending at an intersection with BL I-35/FM 140 near the town square.
^The certified length given is shorter than the actual mileage as TxDOT considers Spur 581 to be discontinuous at the Interstate 35 frontage road from FM 1583 to the Missouri Pacific Railroad instead of being concurrent with it.