# Africa
  * [Golang Buea](https://meetup.com/Docker-Buea) - Buea, Cameroon
  * [Go Egypt](https://web.facebook.com/groups/563213043835298/) - Cairo, Egypt.
  * [Go Cape Town](http://www.meetup.com/gocapetown/) - Cape Town.
  * [golang-dakar](https://plus.google.com/u/0/communities/116552609416802012105) Dakar (Sénégal)
  * [Joburg Golang Group](http://www.meetup.com/Joburg-Golang-Group/) - Johannesburg
  * [angolang](https://plus.google.com/u/0/b/112645881964422842789/communities/111727796450195570970) Luanda, Angola

# Asia

  * [Golang China](http://groups.google.com/group/golang-china) - China.
  * [Golang JP](https://plus.google.com/communities/107075098212007233819) - Japan.
  * [GDG Korea Golang](https://plus.google.com/u/0/communities/115721275599816202991) - Korea.
  * [Golang Vietnam](https://www.facebook.com/golang.org.vn) - [github](https://github.com/golang-vietnam) -  Vietnam 🇻🇳
  * [Golang Taiwan](http://golang.tw) - Taiwan.
  * [Golang India](https://plus.google.com/communities/102083447604771785504) - Bangalore, India.
  * [Golang Chennai](http://www.meetup.com/Chennai-golang-Meetup/) - Chennai, India
  * [Golang Pune](https://plus.google.com/communities/103673348666338246281) - Pune, India.
  * [Golang Israel](http://www.meetup.com/Go-Israel) - Israel.
  * [Singapore Gophers](https://www.facebook.com/groups/golang.sg/) - [Meetup](http://www.meetup.com/golangsg/) - Singapore.
  * [GoJakarta](http://www.meetup.com/GoJakarta) - Jakarta, Indonesia.
  * [Golang Malaysia](https://www.facebook.com/groups/mygolang/) - [Homepage](https://golang.my) - Malaysia.
  * [Go Developers Network Bangladesh](https://www.facebook.com/groups/godevnet/) - Bangladesh.

# Europe

  * [Golang Türkiye](https://www.facebook.com/groups/GolangTurkiye) - Istanbul, Turkey.
  * [Gophers Aachen](https://www.meetup.com/Gophers-Aachen/) - Aachen, Germany.
  * [Amsterdam, NL](http://www.meetup.com/golang-amsterdam/)
  * [Belarus](http://gophers.by/) - Belarus.
  * [Barcelona](http://golangbcn.org) - Barcelona, Catalunya, Spain.
  * [Brno Golang](http://www.meetup.com/Golang-Brno/) - Brno, the Czech Republic
  * [Cambridge Gophers](http://www.meetup.com/Cambridge-Gophers/) - Cambridge, UK
  * [Suffolk Gophers](https://suffolkgophers.github.io/) - Suffolk, UK
  * [GDG Berlin Golang](http://www.meetup.com/golang-users-berlin/) - Berlin, Germany.
  * [Go-User-Group-Hamburg](http://www.meetup.com/Go-User-Group-Hamburg) - Hamburg, Germany.
  * [Go Lithuania User Group](http://gophers.lt/) - Lithuania, Kaunas.
  * [Go London User Group](http://www.meetup.com/Go-London-User-Group/) - London, UK.
  * [ManGo The Manchester Go User Group](http://mango.computer/) - Manchester, UK.
  * [GoMAD](https://www.meetup.com/go-mad/) - Madrid, Spain 
  * [Go Valhalla](https://t.me/joinchat/AAAAAEJGQn7K_oRUBWaNng) - Valencia, Spain. 🇻🇳
  * [Go Wales User Group](http://golang.cymru/) - Wales, UK.
  * [Golang Москва](http://www.meetup.com/Golang-Moscow/) - Moscow, Russia.
  * [Golang Питер](http://www.meetup.com/Golang-Peter/) - Saint Petersburg, Russia.
  * [Golang Новосибирск](http://www.meetup.com/GolangNSK/) - Novosibirsk, Russia.
  * [Chisinau Golang Meetup](http://www.meetup.com/Chisinau-Golang-Meetup/) - Chisinau, Moldova
  * [Munich Gophers](http://www.meetup.com/Munich-Gophers-Go-User-Group/) - Munich, Germany
  * [Golang Paris](http://www.meetup.com/Golang-Paris) - Paris, France.
  * [Golang Rennes](http://www.meetup.com/Golang-Rennes/) - Rennes, France.
  * [Golang Lyon](http://www.meetup.com/fr-FR/Golang-Lyon/) - Lyon, France.
  * [golang-pl](https://groups.google.com/forum/?fromgroups#!forum/golang-pl) - Poland.
  * [Gophers Katowice](http://www.meetup.com/Gophers-Katowice) - Katowice, Poland.
  * [Golang Warsaw](http://www.meetup.com/Golang-Warsaw) - Warsaw, Poland.
  * [G.L.U.G. Wroclaw](http://www.meetup.com/GoLang-User-Group-Wroclaw/) - Wroclaw, Poland
  * [Golang User Group Trójmiasto](https://www.meetup.com/Golang-User-Group-Trojmiasto/) - Gdańsk/Gdynia/Sopot, Poland
  * [Go-Stockholm](http://www.meetup.com/Go-Stockholm/) - Stockholm, Sweden.
  * [Go-Uppsala](http://www.meetup.com/Go-Uppsala/) - Uppsala, Sweden.
  * [golang-greece](https://groups.google.com/forum/#!forum/golang-greece) - Greece
  * [GolangIT](http://golangit.github.io/) - Italy.
  * [Go-Turkey](https://plus.google.com/communities/101920753066440157216) - Turkey.
  * [Go Graz](http://gograz.org) - Graz, Austria
  * [Meetup Belgium](http://www.meetup.com/Golang-Belgium/) - Belgium
  * [Meetup Lausanne](http://www.meetup.com/Lausanne-golang-Meetup) - Lausanne, Switzerland
  * [Meetup Zurich](http://www.meetup.com/Zurich-Gophers/) - Zurich, Switzerland
  * [Meetup Frankfurt](http://www.meetup.com/Frankfurt-Gophers-Meetup/) - Frankfurt am Main, Germany
  * [Go-ningen](http://www.meetup.com/Go-ningen/) - Groningen, The Netherlands
  * [Golang Ljubljana](http://www.meetup.com/Slovenian-Go-lang-User-Group/) - Ljubljana, Slovenia
  * [Go Euregio](https://plus.google.com/communities/116272759718686417490) - Maastricht, Netherlands; Liège/Hasselt, Belgium; Aachen, Germany
  * [Ukrainian Golang User Group](http://www.meetup.com/uagolang/) - Kyiv, Ukraine
  * [L'viv Golang Group](http://www.meetup.com/Lviv-Golang-Group/) - L'viv, Ukraine
  * [Go SXB, Go!](http://www.meetup.com/fr-FR/Go-SXB-Go/) - Strasbourg, France
  * [Hannover Gophers Meetup](http://www.meetup.com/de-DE/Hannover-Gophers-Meetup/) - Hannover, Germany
  * [Golang Nürnberg](http://www.meetup.com/de-DE/Golang-Nuernberg/) - Nürnberg, Germany
  * [Helsinki Gophers](http://www.meetup.com/Helsinki-Gophers/) - Helsinki, Finland
  * [Golang Cologne](http://www.meetup.com/Golang-Cologne/) - Cologne/Bonn, Germany
  * [Golang Vilnius](http://www.meetup.com/Vilnius-Golang/) - Vilnius, Lithuania
  * [Meetup Surrey](http://www.meetup.com/Surrey-Go-User-Group-Meetup/) - Surrey, UK
  * [Golang Zagreb](https://www.meetup.com/Golang-ZG/) - Zagreb, Croatia
  * [Meetup Edinburgh](https://www.meetup.com/Edinburgh-Golang-meetup/) - Edinburgh, UK
  * [Münster Gophers](https://www.meetup.com/de-DE/Munster-Gophers/) - Münster, Germany
  * [Vienna.go - Vienna Go User Group](https://www.meetup.com/Vienna-go-Vienna-Go-User-Group/events/242583645/) - Vienna, Austria

# North America

## Canada

  * [Edmonton Go Meetup](https://edmontongo.org/) - Edmonton AB, Canada.
  * [vangophers](http://groups.google.com/group/vangophers) - Vancouver BC, Canada.
  * [Go Vancouver](https://plus.google.com/u/0/communities/106063002572645508555) - Vancouver BC, Canada.
  * [GolangVan meetup](http://www.meetup.com/golangvan/) - Vancouver BC, Canada.
  * [GolangVan](http://golangvan.org/) - Vancouver BC, Canada.
  * [GoTO](http://www.meetup.com/go-toronto) - Toronto ON, Canada.
  * [Ottawa Go](http://www.meetup.com/Ottawa-Go-Meetup/) - Ottawa ON, Canada.
  * [KW Go Developers](http://www.meetup.com/Golang-KW/) - Waterloo, ON, Canada.
  * [Golang Montréal](https://golangmontreal.org/) - Montréal, QC
  * [Golang Winnipeg](https://www.meetup.com/Golang-Wpg-Meetup/) - Winnipeg MB, Canada

## Dominican Republic

  * [Golang Dominicana](https://www.facebook.com/groups/golangdominicana) - República Dominicana.

## Latin America

  * [Golang-ES](https://www.facebook.com/groups/goenespanol) - Golang en Español.

## Mexico

  * [golangmx](http://golang.mx/) - Mexico City, Mexico.
  * [Golang Monterrey](http://www.meetup.com/Golang-MTY/) - Monterrey, Mexico

## United States

  * [Los-Angeles-Gophers](http://www.meetup.com/Los-Angeles-Gophers/) - Los Angeles CA, USA.
  * [Golang Mountain View](http://www.meetup.com/Golang-Mountain-View/) - Mountain View CA, USA.
  * [OC Gophers](http://www.meetup.com/Orange-County-Gophers) - Orange County CA, USA.
  * [SDGophers](http://www.meetup.com/sdgophers/) — San Diego CA, USA
  * [GoSF](http://www.meetup.com/golangsf/) - San Francisco CA, USA.
  * [GoSV](http://www.meetup.com/GolangSV/) - San Mateo CA, USA.
  * [Boulder Gophers](https://www.meetup.com/Boulder-Gophers/) - Boulder CO, USA.
  * [Denver Go Language User Group](http://www.meetup.com/Denver-Go-Language-User-Group/) - Denver CO, USA.
  * [DTC Go Meetup](https://www.meetup.com/Denver-Go-Programming-Language-Meetup/) - Denver Tech Center CO, USA.
  * [Go-Miami](http://www.meetup.com/Go-Miami/) - Miami FL, USA.
  * [Orlando Gophers](https://www.meetup.com/OrlandoGophers/) - Orlando FL, USA
  * [Go-Users-Group-Atlanta](http://www.meetup.com/Go-Users-Group-Atlanta/) - Atlanta GA, USA.
  * [chicagolang](http://groups.google.com/group/chicagolang) - Chicago IL, USA.
  * [Chicago Ultimate Golang](https://www.meetup.com/Chicago-Ultimate-Golang/) - Chicago IL, USA.
  * [Louisville Golang](http://www.meetup.com/Louisville-Golang-Meetup/) - Louisville KY, USA.
  * [Boston Golang](http://bostongolang.org) - Boston MA, USA.
  * [Framingham Go](https://www.meetup.com/Framingham-Golang-Meetup/) - Framingham MA, USA.
  * [GoMN](http://www.meetup.com/golangmn/) - Minneapolis MN, USA.
  * [NYC Go Developers Meetup](http://www.meetup.com/nycgolang/) - New York NY, USA.
  * [New York Go Language Meetup](http://www.meetup.com/golangny/) - New York NY, USA.
  * [Bowery Golang Meetup](https://www.meetup.com/Bowery-Go/) - New York NY, USA.
  * [GoLangPhilly](http://www.meetup.com/GoLangPhilly/) - Philadelphia PA, USA.
  * [GoLangPhoenix](http://www.meetup.com/Golang-Phoenix/) - Phoenix AZ, USA.
  * [EUG-Go](http://www.meetup.com/EUG-Go/) - Eugene, OR, USA.
  * [PDX-Go](http://www.meetup.com/PDX-Go/) - Portland, OR, USA.
  * [GoLancaster](http://www.meetup.com/GoLancaster/) - Lancaster PA, USA.
  * [ATX-Golang](http://www.meetup.com/atxgolang/) - Austin TX, USA.
  * [GoDFW](http://www.meetup.com/GoCowboys/) - Dallas TX, USA.
  * [Golang Houston](http://www.meetup.com/Golang-Houston/) - Houston TX, USA.
  * [Utah Golang (#UTGO)](http://www.meetup.com/utahgophers/) - Salt Lake City UT, USA.
  * [Golang-DC](http://www.meetup.com/Golang-DC/) - Arlington VA, USA.
  * [Seattle Go Programmers](http://www.meetup.com/golang/) - Seattle WA, USA.
  * [Go Charlotte Meetup](http://www.meetup.com/golangclt/) - Charlotte NC, USA
  * [Triangle Golang](http://www.meetup.com/Triangle-Golang-Meetup/) - Raleigh NC, USA.
  * [Las Vegas Go Meetup](http://www.meetup.com/Las-Vegas-Go-Meetup/) - Las Vegas NV, USA.
  * [Ann Arbor Gophers](http://www.meetup.com/Ann-Arbor-Gophers/) - Ann Arbor MI, USA
  * [Baltimore Metro Area Golang](http://baltimoregolang.org) - Baltimore MD, USA
  * [Nashville Gophers](https://nashgo.org) - Nashville TN, USA
  * [St Louis Go Meetup] (https://www.meetup.com/Saint-Louis-Go-Meetup/) - St Louis, MO, USA.

# Oceania
  * [Canberra Gophers](https://plus.google.com/u/1/communities/114036877112593565975) - Canberra, Australia.
  * [golang-sydney](http://www.meetup.com/golang-syd/) - Sydney, Australia.
  * [golang-nz](http://groups.google.com/group/golang-nz) - New Zealand.
  * [Melbourne-Go-Nuts](http://www.meetup.com/Melbourne-Go-Nuts) - Melbourne, Australia.
  * [Brisbane Gophers](http://www.meetup.com/Brisbane-Golang-Meetup/) - Brisbane, Australia.

# South America
  * [Golang Brasil](https://www.meetup.com/pt-BR/golangbr/) - Brazil.
  * [Golang Rio de Janeiro](https://www.meetup.com/pt-BR/Gophers-Rio) - Rio de Janeiro, Brazil.
  * [Golang Argentina](http://www.meetup.com/es-ES/Golang-Argentina/) - Argentina.
  * [Golang Medellín](http://www.meetup.com/Golang-Medellin/) - Colombia.
  * [Golang Chile](https://groups.google.com/d/forum/golang-chile) - Chile.
  * [Golang Panamá](https://groups.google.com/d/forum/golang-panama) - Panamá.
  * [Golang Lima](http://www.meetup.com/es/Golang-Peru/) - Perú