ગો પ્રોગ્રામરને એવા કર્યો લખવા માટે પરવાનગી આપે છે જે કોઈપણ મનસ્વી ઇનપુટ પર કામ કરી શકે છે, પણ તે કાર્યોનું વિવરણ ઇંટરફેસમાં અમલ હોવું જોઇએ.
ગો ઈન્ટરફેસ પદ્ધતિઓનો સમૂહ તરીકે વર્ણવવામાં આવે છે, એક નામ અને સિગ્નેચર દ્વારા ઓળખાય છે.એક પ્રકાર માટે ઈન્ટરફેસ અમલમાં માનવામાં આવે છે જો તમામ જરૂરી પદ્ધતિઓ તે પ્રકાર માટે વ્યાખ્યાયિત થયેલ છે.એક ઇન્ટરફેસ માટે અન્ય ઈન્ટરફેસો "એમ્બેડ" જાહેર કરી શકાય છે જ્યારે અન્ય ઈન્ટરફેસોની વ્યાખ્યાયિત પદ્ધતિઓનો તેમાં સમાવેશ હોય છે.
જાવા વિપરીત, એક ઓબ્જેક્ટ તેની આંતરિક-મેમરીની રજૂઆતમાં વર્ચ્યુઅલ પદ્ધતિ ટેબલ પર પોઇન્ટર ધરાવતું નથી.તેના બદલે ઈન્ટરફેસ પ્રકારની કિંમત તરીકે ૨ પોઇંટરો અમલમાં મૂકાયેલ છે;૧) ઓબ્જેક્ટ માટે પોઇન્ટર ૨)તે પ્રકાર માટે ઇન્ટરફેસ પદ્ધતિઓ અમલીકરણો સમાવતી શબ્દકોશ માટે પોઇન્ટર.

ઉદાહરણ તરીકે:

type Sequence []int

func (s Sequence) Len() int {

type HasLength interface {

func Foo (o HasLength) {
આ ચાર વ્યાખ્યાઓને અલગ ફાઈલોમાં તથા કાર્યક્રમના વિવિધ ભાગોમાં મૂકી શકાય.નોંધનીય છે કે, પ્રોગ્રામર જેઓએ codice_5 પ્રકારનું વિવરણ કર્યુ છે તેમને codice_6 અમલમાં મૂકાયેલ છે તેવી જાહેરાત કરવાની જરૂર નથી.જે વ્યક્તિએ codice_5 માટે codice_8 પદ્ધતિ અમલમાં મૂકાયેલ છે કે તે પદ્ધતિ codice_6નો ભાગ હોય તે જરૂરી નથી.

ઉદાહરણો
અમલીકરણ
પ્રકારનું સિસ્ટમ
નામકરણ વિવાદ