The child, who WA Police say is six, was found in Booragoon in the city’s south.
Police issued an alert at 4pm, saying the boy had last been seen around Riseley Street in the suburb.
The little boy, who had a blonde mullet-style haircut, was not thought to be wearing any clothes, police said earlier.
They said he may have difficulty communicating with strangers.
St John Ambulance took him to Fiona Stanley Hospital after he was given first aid, police said, adding that they remained at the scene.