After a certain amount of time, the overworld DexNav search will stop working and the message will say "[Pokémon] ran away!" I believe it's after one minute. If you spend too long sneaking up on a Pokémon, it will escape.
Souce: This has happened to me in tall grass, caves and while Surfing.