diff --git a/modules/base/template.go b/modules/base/template.go
index 196b935107..1442bf0e84 100644
--- a/modules/base/template.go
+++ b/modules/base/template.go
@@ -118,6 +118,9 @@ var TemplateFuncs template.FuncMap = map[string]interface{}{
 	"CdnMode": func() bool {
 		return setting.ProdMode && !setting.OfflineMode
 	},
+	"DisableGravatar": func() bool {
+		return setting.DisableGravatar
+	},
 	"LoadTimes": func(startTime time.Time) string {
 		return fmt.Sprint(time.Since(startTime).Nanoseconds()/1e6) + "ms"
 	},
diff --git a/modules/setting/setting.go b/modules/setting/setting.go
index 462e838456..12fd52c999 100644
--- a/modules/setting/setting.go
+++ b/modules/setting/setting.go
@@ -322,6 +322,9 @@ func NewConfigContext() {
 		GravatarSource = "//1.gravatar.com/avatar/"
 	}
 	DisableGravatar = sec.Key("DISABLE_GRAVATAR").MustBool()
+	if OfflineMode {
+		DisableGravatar = true
+	}
 
 	if err = Cfg.Section("git").MapTo(&Git); err != nil {
 		log.Fatal(4, "Fail to map Git settings: %v", err)
diff --git a/templates/org/settings/options.tmpl b/templates/org/settings/options.tmpl
index 1179ede620..86e52fcd82 100644
--- a/templates/org/settings/options.tmpl
+++ b/templates/org/settings/options.tmpl
@@ -46,10 +46,12 @@
                 <label for="location">{{.i18n.Tr "org.settings.location"}}</label>
                 <input class="ipt ipt-large ipt-radius {{if .Err_Location}}ipt-error{{end}}" id="location" name="location" type="text" value="{{.Org.Location}}" />
               </div>
+              {{if not DisableGravatar}}
               <div class="field">
                 <label for="gravatar-email">Gravatar {{.i18n.Tr "email"}}</label>
                 <input class="ipt ipt-large ipt-radius {{if .Err_Avatar}}ipt-error{{end}}" id="gravatar-email" name="avatar" type="text" value="{{.Org.AvatarEmail}}" />
               </div>
+              {{end}}
               <div class="field">
                 <span class="form-label"></span>
                 <button class="btn btn-green btn-large btn-radius" id="change-orgname-btn" href="#change-orgname-modal">{{.i18n.Tr "org.settings.update_settings"}}</button>
diff --git a/templates/user/settings/profile.tmpl b/templates/user/settings/profile.tmpl
index febf523704..2fd6c7b2a5 100644
--- a/templates/user/settings/profile.tmpl
+++ b/templates/user/settings/profile.tmpl
@@ -46,10 +46,12 @@
                                     <label for="location">{{.i18n.Tr "settings.location"}}</label>
                                     <input class="ipt ipt-large ipt-radius {{if .Err_Location}}ipt-error{{end}}" id="location" name="location" type="text" value="{{.SignedUser.Location}}" />
                                 </div>
+                                {{if not DisableGravatar}}
                                 <div class="field">
                                     <label class="req" for="gravatar-email">Gravatar {{.i18n.Tr "email"}}</label>
                                     <input class="ipt ipt-large ipt-radius {{if .Err_Avatar}}ipt-error{{end}}" id="gravatar-email" name="avatar" type="text" value="{{.SignedUser.AvatarEmail}}" />
                                 </div>
+                                {{end}}
                                 <div class="field">
                                     <label></label>
                                     <button class="btn btn-green btn-large btn-radius" id="change-username-btn" href="#change-username-modal">{{.i18n.Tr "settings.update_profile"}}</button>