Narrative:

I was working local control and had cleared aircraft Y to land runway 15. At some point prior to aircraft Y on final for runway 15 I taxied aircraft X to runway 33. Aircraft X then reached the end and called ready for departure.I missed aircraft Y in my scan and cleared aircraft X for takeoff runway 33. I then realized that there was an aircraft (aircraft Y) very near touchdown runway 15 and cancelled aircraft X takeoff clearance and instructed aircraft X to turn left at B8 taxiway and hold short of runway 33 due to the fact aircraft X was already past the hold bars entering the runway; and as aircraft Y was on the runway.I felt issuing a go around would have been more dangerous at this point due to the mountainous terrain and aircraft Y was already on the runway and decelerating; and aircraft X was on the runway. Aircraft X taxied clear of the runway at B8; and aircraft Y taxied clear of the runway at A5. Aircraft X was then cleared for takeoff runway 33 and aircraft Y taxied to the FBO.I could have been more precise and complete on my scan; had I done that; the situation would have never happened. If I had realized it sooner I could have cancelled aircraft X takeoff clearance prior to the aircraft entering the runway. Maybe a memory aid to help with the scan of arrival aircraft.

Google
 

Original NASA ASRS Text

Title: Local Controller reported clearing an aircraft for takeoff with another aircraft on short final in the opposite direction on the same runway.

Narrative: I was working Local Control and had cleared Aircraft Y to land Runway 15. At some point prior to Aircraft Y on final for Runway 15 I taxied Aircraft X to Runway 33. Aircraft X then reached the end and called ready for departure.I missed Aircraft Y in my scan and cleared Aircraft X for takeoff Runway 33. I then realized that there was an aircraft (Aircraft Y) very near touchdown Runway 15 and cancelled Aircraft X takeoff clearance and instructed Aircraft X to turn left at B8 taxiway and hold short of Runway 33 due to the fact Aircraft X was already past the hold bars entering the runway; and as Aircraft Y was on the runway.I felt issuing a go around would have been more dangerous at this point due to the mountainous terrain and Aircraft Y was already on the runway and decelerating; and Aircraft X was on the runway. Aircraft X taxied clear of the runway at B8; and Aircraft Y taxied clear of the runway at A5. Aircraft X was then cleared for takeoff runway 33 and Aircraft Y taxied to the FBO.I could have been more precise and complete on my scan; had I done that; the situation would have never happened. If I had realized it sooner I could have cancelled Aircraft X takeoff clearance prior to the aircraft entering the runway. Maybe a memory aid to help with the scan of arrival aircraft.

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.