A small plane has crashed into the ocean just off Perth's Leighton Beach in North Fremantle.
Both people on board made it to safety.
The pilot, Michelle Yeates, said she was returning to Perth after seeing the solar eclipse in WA's north when the engine "just cut out".
Ms Yeates, 45, is a commercial pilot and was with her son Jake, 15, on her way from Carnarvon to Jandakot Airport in the Piper Aircraft plane just after 5pm when the aircraft experienced trouble.
She told the ABC's Charlotte Hamlyn, who was on the beach at the time, the engine started to behave very strangely, so she sent out a mayday call.
"I knew I wasn't going to be able to make it back into Jandakot … it's too far and if I tried I'd land on people's houses … it would have been really bad," Ms Yeates said.
"I was only at 1,500 feet, I didn't have much time to react so I just sent out a mayday to the tower and then just turned around and landed on the water — I tried to get as close to the beach as I could without hitting anybody.
"I'm pretty shaky, I'm pumped with adrenaline, but you train to do that sort of thing so I've trained for that many, many times.
"I never thought I was actually going to have to do it in real life."
'Mate we've just had engine failure'
Ms Yeates said she was speaking to her son as the plane came down, telling him: "Mate, we've just had engine failure, we're going to have to land on the beach."
"He was like, 'For real? Are you for real?.' I said, 'Hopefully this is the most exciting thing that's going to happen in your life and we're going to be OK.'"
Ms Yeates said she did all she could to land the plane at the right angle, because if it had hit the water nose first, it might have flipped over.
"So I just tried to land it at the right angle and then as we hit the water it was quite a forceful stop but we didn't hit our heads on the dash," she said.
"Then Jake got the door open really quickly and we just got out as it was going down.
"We were just standing on the wings … I was just thinking, we're going to have to swim."
Ms Yeates said people from the beach also swam out to help them get back to shore.
Pilot did 'exceptional job', police say
Acting Inspector Mark Cannon said Ms Yeates and her son were very lucky not to be injured.
"I'm definitely going to be asking them for the lottery numbers," he said.
"It's obviously got to be a scary incident for them, but the pilot did an exceptional job bringing it down … we're close to a lot of public buildings and stuff so they did very well to put it down where they did.
"Whether she [Ms Yeates] is experienced or not, she did a fantastic job."
He said there was no fuel spillage from the plane.
Mayday call response captured on recordings
Air traffic control recordings capture a controller responding to the aircraft's mayday call and asking the pilot to report when they are on the water. The plane's transmissions are not recorded.
Another aircraft in the area offers to look for the crashed plane for "as long as required".
A few minutes later, that plane's pilot tells air traffic control they can see the aircraft in the water, about 25 to 30 metres from shore.
"There are people on the beach. I can't determine whether there's anybody that's exited the aircraft just yet," the pilot said.
'When it nosedived … I started screaming'
People who witnessed the crash from the beach described the scene as "scary".
"I could see it come across the ocean and it was just coming and it got lower and lower," Beverley Port-Louis said.
"Then when it nosedived that's when I started screaming … then it just hit the water and now you can only see what's above the water.
"But the best part is, people were rescued and they all came out safe and that's the main thing.
"I've never seen anything like it in my life … I'm still shaken up from it."
'I'm really shocked they're alive', witness says
Jordy, 14, was at the beach with his family when the plane went down.
"I was just, like, in shock. I didn't really know what to think," Jordy said.
"I'm really shocked that they're alive. It was pretty crazy.
"It was pretty, loud, scary. I wasn't really expecting it."
Michiel Visser was also at the beach with his family.
"We saw this plane coming in, it was too low already, so I thought, 'That doesn't look right,' pulled the camera out, took the video until it came to a stop. Phoned the emergency services," he said.
"Luckily the two occupants came out, there were one or two people on the beach who swam out to them and they made it out OK."