Narrative:

I was working local; ground and controller in charge (controller in charge) combined. Aircraft X was in the run up pad at the end of taxiway papa performing a run up before takeoff. Aircraft Y checked in on approximately a 6 mile right base for runway 05. After clearing aircraft Y to land; aircraft X called ready for takeoff and appeared to [be] taxiing from the run up pad to the runway. I cleared aircraft X for takeoff and informed them of the arriving aircraft on the 6 mile base. I then sent a transmission to aircraft Y to inform them of traffic (aircraft X) to depart runway prior to their arrival. I then continued to do a check for the runway and airport environment for potential conflicts for the departing aircraft. As I scanned back to aircraft X starting their takeoff role it appeared that they might have lined up on a taxiway rather than the runway. Due to the distance between the tower and the approach end of the runway I reached for binoculars to verify which surface aircraft X was beginning their takeoff roll on. After confirming that aircraft X was conducting takeoff roll on the taxiway I attempted to cancel the takeoff clearance when aircraft X was abeam papa 6. There was no response from the pilot and they had lifted off of the taxiway. Aircraft X then appeared to sidestep over to the runway and continued with the departure. No other aircraft or vehicles were present on taxiway papa and there were no workers or equipment in the closed sections of the taxiway at the time. The distance from the approach end of the runway and the tower is the biggest issue with this event. The distance made it so that I felt it was necessary to check to ensure the aircraft was on the taxiway to insure that I wasn't cancelling a takeoff clearance unnecessarily and potentially creating a high stress and potentially dangerous event without cause.

Google
 

Original NASA ASRS Text

Title: DSM Tower Controller and pilot reported the pilot took off from a taxiway.

Narrative: I was working Local; Ground and CIC (Controller in Charge) combined. Aircraft X was in the run up pad at the end of Taxiway Papa performing a run up before takeoff. Aircraft Y checked in on approximately a 6 mile right base for Runway 05. After clearing Aircraft Y to land; Aircraft X called ready for takeoff and appeared to [be] taxiing from the run up pad to the runway. I cleared Aircraft X for takeoff and informed them of the arriving aircraft on the 6 mile base. I then sent a transmission to Aircraft Y to inform them of traffic (Aircraft X) to depart runway prior to their arrival. I then continued to do a check for the runway and airport environment for potential conflicts for the departing aircraft. As I scanned back to Aircraft X starting their takeoff role it appeared that they might have lined up on a taxiway rather than the runway. Due to the distance between the tower and the approach end of the runway I reached for binoculars to verify which surface Aircraft X was beginning their takeoff roll on. After confirming that Aircraft X was conducting takeoff roll on the taxiway I attempted to cancel the takeoff clearance when Aircraft X was abeam Papa 6. There was no response from the pilot and they had lifted off of the taxiway. Aircraft X then appeared to sidestep over to the runway and continued with the departure. No other aircraft or vehicles were present on Taxiway Papa and there were no workers or equipment in the closed sections of the taxiway at the time. The distance from the approach end of the runway and the tower is the biggest issue with this event. The distance made it so that I felt it was necessary to check to ensure the aircraft was on the taxiway to insure that I wasn't cancelling a takeoff clearance unnecessarily and potentially creating a high stress and potentially dangerous event without cause.

Data retrieved from NASA's ASRS site and automatically converted to unabbreviated mixed upper/lowercase text. This report is for informational purposes with no guarantee of accuracy. See NASA's ASRS site for official report.