When an Entry is added/updated, Connections will attempt to geocode the address using a free OpenStreetMaps (OSM) service provider unless the Google Maps API has been set up. It appears you are using the free OSM provider. The geocoding can be hit and miss, and when there is a miss, the latitude and longitude can not be saved because it does not exist, and if those values do not exist, a map pin can not be plotted a map is not displayed.
If maps are a critical feature for your directory I recommend setting up the Google Maps API for your site:
The Google Maps Geocoding API is far more reliable, especially within the US.
To quickly identify the entries missing the lat/lng data, I suggest using the CSV Export tool found on the Connections Tools admin page under the Export tab. Use the “All” tool.
There are multiple ways this can be addressed after identifying the affected entries.
If you set up the Google Maps API, simply editing the entry, making no changes, and saving will automatically trigger Connections to attempt to geocode the address.
Without the Google Maps API, you can click the Geocode button, drag and drop a map pin to the correct location. If you get a blank instead of a map, you’ll have to adjust the address so the free geocoder can return a result. Alternatively, you can manually enter the lat/lng data.
Another method, if you have the CSV Import addon, you can add the lat/lng to the exported CSV file and then update the entries using the updated CSV file by importing the updated CSV file.
I hope this helps!