I get the following error while doing a batch update via profile when Google geocoding is turned on or adding a record via a profile (donation page). The data doesn't even reach civi (no pending transaction), connection timed out instead. Donations sometimes work, but it is a small percentage of the time.

I had also disabled USPS Web Tools per this thread https://forum.civicrm.org/index.php%3Ftopic=24316.0.html and it worked temporarily but that doesn't appear to be the real fix.

I have tried regenerating an API key and trying to run it with USPS disabled and goecoding enabled.

It still works upon an import and while editing or adding on contact summary screen.

In the google API settings I have check all settings. There is no application restrictions. We did just switch servers however.

        [callback] => Array
                [0] => CRM_Core_Error
                [1] => handle

        [code] => 110
        [message] => Connection timed out
        [mode] => 16
        [debug_info] => 
        [type] => PEAR_Error
        [user_info] => 
        [to_string] => [pear_error: message="Connection timed out" code=110 mode=callback callback=CRM_Core_Error::handle prefix="" info=""]


Here is the backtrace:

  content/plugins/civicrm/civicrm/CRM/Core/Error.php(192): CRM_Core_Error::backtrace()
#1 .../wp-content/plugins/civicrm/civicrm/vendor/pear/pear-core-minimal/src/PEAR.php(922): CRM_Core_Error::handle(Object(PEAR_Error))
#2 .../wp-content/plugins/civicrm/civicrm/vendor/pear/pear-core-minimal/src/PEAR.php(577): PEAR_Error->__construct("Connection timed out", 110, 16, (Array:2), NULL)
#3 .../wp-content/plugins/civicrm/civicrm/vendor/pear/pear-core-minimal/src/PEAR.php(223): PEAR->_raiseError(Object(Net_Socket), "Connection timed out", 110)
#4 .../wp-content/plugins/civicrm/civicrm/vendor/pear/net_socket/Net/Socket.php(173): PEAR->__call("raiseError", (Array:2))
#5 .../wp-content/plugins/civicrm/civicrm/packages/HTTP/Request.php(737): Net_Socket->connect("ssl://maps.googleapis.com", 443, NULL, "60", NULL)
#6 .../wp-content/plugins/civicrm/civicrm/CRM/Utils/Geocode/Google.php(126): HTTP_Request->sendRequest()
#7 .../wp-content/plugins/civicrm/civicrm/CRM/Core/BAO/Address.php(1380): CRM_Utils_Geocode_Google::format((Array:18))
#8 .../wp-content/plugins/civicrm/civicrm/CRM/Core/BAO/Address.php(377): CRM_Core_BAO_Address::addGeocoderData((Array:18))
#9 .../wp-content/plugins/civicrm/civicrm/CRM/Core/BAO/Address.php(144): CRM_Core_BAO_Address::fixAddress((Array:18))
#10 .../wp-content/plugins/civicrm/civicrm/CRM/Core/BAO/Address.php(120): CRM_Core_BAO_Address::add((Array:18), TRUE)
#11 .../wp-content/plugins/civicrm/civicrm/CRM/Core/BAO/Location.php(70): CRM_Core_BAO_Address::create((Array:18), TRUE, NULL)
#12 .../wp-content/plugins/civicrm/civicrm/CRM/Contact/BAO/Contact.php(340): CRM_Core_BAO_Location::create((Array:18), TRUE)
#13 .../wp-content/plugins/civicrm/civicrm/CRM/Contact/BAO/Contact.php(2007): CRM_Contact_BAO_Contact::create((Array:18))
#14 .../wp-content/plugins/civicrm/civicrm/CRM/Contact/Form/Task/Batch.php(245): CRM_Contact_BAO_Contact::createProfileContact((Array:17), (Array:10), 282136, NULL, "31", NULL, TRUE)
#15 .../wp-content/plugins/civicrm/civicrm/CRM/Core/Form.php(490): CRM_Contact_Form_Task_Batch->postProcess()
#16 .../wp-content/plugins/civicrm/civicrm/CRM/Core/StateMachine.php(160): CRM_Core_Form->mainProcess()
#17 .../wp-content/plugins/civicrm/civicrm/CRM/Core/QuickForm/Action/Next.php(61): CRM_Core_StateMachine->perform(Object(CRM_Contact_Form_Task_Batch), "next", "Next")
#18 .../wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Controller.php(203): CRM_Core_QuickForm_Action_Next->perform(Object(CRM_Contact_Form_Task_Batch), "next")
#19 .../wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Page.php(103): HTML_QuickForm_Controller->handle(Object(CRM_Contact_Form_Task_Batch), "next")
#20 .../wp-content/plugins/civicrm/civicrm/CRM/Core/Controller.php(349): HTML_QuickForm_Page->handle("next")
#21 .../wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(311): CRM_Core_Controller->run((Array:4), (Array:0))
#22 .../wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(85): CRM_Core_Invoke::runItem((Array:13))
#23 .../wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(52): CRM_Core_Invoke::_invoke((Array:4))
#24 .../wp-content/plugins/civicrm/civicrm.php(1392): CRM_Core_Invoke::invoke((Array:4))
#25 .../wp-includes/class-wp-hook.php(286): CiviCRM_For_WordPress->invoke("")
#26 .../wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters("", (Array:1))
#27 .../wp-includes/plugin.php(465): WP_Hook->do_action((Array:1))
#28 .../wp-admin/admin.php(253): do_action("toplevel_page_CiviCRM")

On Civi 5.13.4 and WP 5.2.2. Anyone else experience this issue before or now?

  • If you recently moved hosts are you able to verify that you can connect from the new server to maps.googleapis.com?
    – Demerit
    Jul 24, 2019 at 18:07
  • I am not sure how to directly test that on server. However, on the contact summary screen, my tests show that both google geocoding and USPS work when saving an address.
    – Andy Burns
    Jul 24, 2019 at 18:15
  • Ok. The error says connection timeout. Maybe you've reached a google limit? Too many in 5 minutes or something?
    – Demerit
    Jul 24, 2019 at 18:20
  • Our usage is very low right now, so that isn't it. But I did enable USPS and disable Google mapping API and then it worked. Hmm...
    – Andy Burns
    Jul 24, 2019 at 18:32
  • So it appears that google API is in fact the issue but strange that it is connecting with google fine within some areas of Civi.
    – Andy Burns
    Jul 24, 2019 at 18:40

2 Answers 2


I've now tested this and it works. Only change was removing W3TC and Fast Velocity Minify plugins but since we exempted civicrm pages I still have doubts that that was the cause.


Here is the guide to move update of USPS. You may find answer here.


Hopefully it helps!

  • Hi, welcome to StackExchange. Thanks for contributing. However, your post has been downvoted a few times because it is not clear how the link you posted is an answer to the original question. To avoid that in future, make sure you explain why the link is relevant.
    – Aidan
    Jul 30, 2019 at 19:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.