Hello we are moving an old CRM into CiviCRM. We are a very international organization and we have found that CiviCRM is missing many states. How do we get this added to CiviCRM? Should we make these additions to our instance, or can we get this added to the standard CiviCRM state table?

  1. Gabon: No States.

  2. Ghana: Some States are missing.

  3. Gibraltar: No States.

  4. Greece: Syros is missing.

  5. Greenland: No States.

  6. Guadeloupe: No States.

  7. India: Telangana is missing.

  8. Macedonia, Republic of: No States.

  9. Malta: Some States are missing.

  10. Mexico: Michoacan is spelled wrong.

  11. Moldova: States are missing.

  12. Montenegro: States are missing

  13. Nepal: No States.

  14. Paraguay: Central is missing.

  15. Portugal: Coimbra is spelled wrong.

  16. Serbia: States are missing.

  17. Seychelles: States are missing.

  18. Singapore: States are missing.

  19. Sweden: Halsingland is missing.

36.Tajikistan: Karotegin is missing.

  1. Thailand: Bueng Kan is missing.

  2. Togo: Plateaux is missing.

  3. Venezuela: Bolivar is missing.

  4. Yugoslavia: it doesn’t exist, move states to new respective countries.

  5. Zambia Some States are missing.

2 Answers 2


The countries in CiviCRM are based on ISO 3166, and the state / province list per country is based on ISO 3166-2. Not all countries have these defined, and we may need to grab a more up to date copy. Can you check against http://www.unece.org/cefact/locode/subdivisions.html and comment if that is sufficient? Alternatively, you can update the list in your instance of CiviCRM using a tool like phpMyAdmin to include unofficial states and provinces of countries by adding records to the civicrm_state_province table.

  • Thank you, this is very helpful. I am working with an organization that is related to the UN, so this list will be very valuable. We will let you know if anything continues to be missing. Perhaps we can get UNECE to update their list, if appropriate. Appreciate your help. Thank you. Apr 21, 2016 at 18:49

There is no specialized mechanism for updating the state/province values in the database. You can file an issue in JIRA (https://issues.civicrm.org/) and provide the details there, and someome from the team can add the appropriate changes for the next release.

You could also apply the changes at Github and then request a pull. The civicrm_state_province table is populated during installation via https://github.com/civicrm/civicrm-core/blob/master/xml/templates/civicrm_state_province.tpl . You can find country IDs in the country ID template.

  • @JonG Thanks for the edit, but I think you missed my point. Do the IDs represent anything in real life— an ISO identifier, say— or are they arbitrary and specific only to CiviCRM? That makes a difference when rolling a patch or making corrections in your local installation that may vary from any future values.
    – choster
    Apr 13, 2016 at 0:04
  • Ah, sorry choster, and feel free to revert my edit! I'll confirm that these aren't ISO codes; everything is CiviCRM-specific. Apr 13, 2016 at 0:22

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.