A Tower Local Controller reported an NMAC between an aircraft climbing from a touch and go and an aircraft executing a missed approach from an intersecting runway.
Synopsis
A Tower Local Controller reported an NMAC between an aircraft climbing from a touch and go and an aircraft executing a missed approach from an intersecting runway.
Narrative
I had taken the local control position with 2 aircraft waiting to depart for pattern work on Runway XX. Aircraft Z was doing a practice approach departing Runway XY and then more with the Radar Controller. Aircraft Z departed and I cleared the VFR Aircraft A and Aircraft Y for right traffic for Runway XX in sequence. Inbound to Runway XY was an IFR Aircraft X on the ILS XY. Additionally; Aircraft Z was getting set up for another approach to Runway XY; as well as another single engine VFR aircraft in the distance inbound to the field I believe also setting up for a practice approach to Runway XX. Aircraft X was assigned a missed approach of 090 heading by the approach controller for Runway XY. The approach and departure path for Aircraft X would conflict with any pattern traffic on Runway XX so my plan was to break off Aircraft X prior to the field to allow time to get out of the way of my other traffic. Aircraft A in the pattern requested full stop taxi backs and was a student solo. The Aircraft A was able to land before Aircraft X became a factor. Aircraft Y was on an extended downwind for Runway XX. I stated Aircraft X; ZZZ Tower; continue. on first contact with Aircraft X thinking I needed to possibly deny the option clearance. Seeing the additional traffic inbound to the field; I needed to turn Aircraft Y back in towards the field and break off Aircraft X. With Aircraft X on a 2 mile final and 3 miles from the intersection of Runway XX and XY I stated: Aircraft X; this isn't going to work; execute your missed approach instructions; when able turn right heading 090; remain south of Runway XX. Aircraft X stated Copy; when able right heading 090.I then instructed Aircraft Y to turn base as more traffic was inbound to the field. I issued instructions to the student solo to exit the runway and taxi back. I then noticed on the Tower radar display Aircraft X was 1 miles from the intersection of Runways XX and XY and had not yet turned. I assumed they were gaining altitude to make a safe turn as they clearly read back to execute the missed. I instructed Aircraft Y to go around as Aircraft X's late turn could now conflict with Aircraft Y. Aircraft Y go around; traffic on an approach to Runway XY; turning east; when able turn left. I did not catch the read back but Aircraft Y only read back go aroundAfter assessing my future plan for the upcoming complex arrival practice approaches on the Tower radar; I looked up to see Aircraft X on Runway XY touching down. Aircraft X unable option; hold your position. But as I was speaking; Aircraft X began to lift off the runway. At that time; Aircraft Y was approximately 300 ft over the threshold of Runway XX and climbing but not turning left. Aircraft X was equidistant to the intersection lifting off the runway and climbing towards Aircraft Y. My only option left was to transmit a traffic alert and hope the early go around to Aircraft Y was soon enough for them to gain altitude. I transmitted Traffic Alert; Aircraft Y; Traffic departing Runway XY below you; break; Traffic Alert; Aircraft X; traffic going around above you. Aircraft Y continued their climb to approximately 600 ft and still on runway heading. Aircraft X climbed to approximately 300 ft straight ahead. From the Tower perspective; they crossed above each other; over the intersection; about 300 ft apart. After both aircraft crossed; I instructed them both to continue runway heading. I was frustrated that Aircraft Y did not execute a turn; but understood their altitude may have prevented a turn. Later I was told they only read back go around.I did everything I could think of to deconflict the situation. I discontinued the approach for Aircraft X early; I issued a go-around earlier than needed to Aircraft Y. Aircraft X read back the instruction; but continued the approach. Aircraft X should have gone around without a landing/option clearance but instead touched down on the runway and departed on his own. This was one of the scariest moments in my career as a air traffic controller.The only way to prevent this is accountability on the pilot side. There is a trend of students/instructors not paying full attention to ATC; especially in a controlled environment like the Class C. They can be distracted by training; and it can lead to unsafe situations. The actions of Aircraft X were at such an extreme end of what can go wrong that it never crossed my mind that all the layers of the swiss cheese could be penetrated by this kind of unsafe behavior.On the ATC side; you are taught to always assume pilots may not do what you expect. I anticipated the complexity and discontinued the approach. I anticipated a late turn and issued an early go-around to Aircraft Y. The only way this could have been prevented would be to assume all pilots are grossly negligent and to treat them that way; witch would be a detriment to the system. The system requires trust that pilots will fly to the best of their abilities; and ATC will work to the best of their abilities and that each will check and balance each other to mitigate risk. My hope is Aircraft X is informed how unsafe of a situation he put himself in and caused for the crew of Aircraft Y. My hope is this situation is forwarded to FSDO to be evaluated for how unsafe it was.
Source: NASA Aviation Safety Reporting System (public domain). Reports are voluntary submissions and are not verified by NASA.