diff --git a/models/repo.go b/models/repo.go
index 47deba2da7a2..81c9d4a11fc4 100644
--- a/models/repo.go
+++ b/models/repo.go
@@ -194,7 +194,7 @@ type Repository struct {
 	NumMilestones       int `xorm:"NOT NULL DEFAULT 0"`
 	NumClosedMilestones int `xorm:"NOT NULL DEFAULT 0"`
 	NumOpenMilestones   int `xorm:"-"`
-	NumTags             int `xorm:"-"`
+	NumReleases         int `xorm:"-"`
 
 	IsPrivate bool `xorm:"INDEX"`
 	IsBare    bool `xorm:"INDEX"`
diff --git a/modules/context/repo.go b/modules/context/repo.go
index db643b50b81b..b16d188428f0 100644
--- a/modules/context/repo.go
+++ b/modules/context/repo.go
@@ -275,7 +275,15 @@ func RepoAssignment() macaron.Handler {
 			return
 		}
 		ctx.Data["Tags"] = tags
-		ctx.Repo.Repository.NumTags = len(tags)
+
+		count, err := models.GetReleaseCountByRepoID(ctx.Repo.Repository.ID, models.FindReleasesOptions{
+			IncludeDrafts: false,
+		})
+		if err != nil {
+			ctx.Handle(500, "GetReleaseCountByRepoID", err)
+			return
+		}
+		ctx.Repo.Repository.NumReleases = int(count)
 
 		ctx.Data["Title"] = owner.Name + "/" + repo.Name
 		ctx.Data["Repository"] = repo
diff --git a/templates/repo/header.tmpl b/templates/repo/header.tmpl
index 7c91000488fd..8d457e7dc402 100644
--- a/templates/repo/header.tmpl
+++ b/templates/repo/header.tmpl
@@ -81,7 +81,7 @@
 
 			{{if and (.Repository.UnitEnabled $.UnitTypeReleases) (not .IsBareRepo) }}
 			<a class="{{if .PageIsReleaseList}}active{{end}} item" href="{{.RepoLink}}/releases">
-				<i class="octicon octicon-tag"></i> {{.i18n.Tr "repo.releases"}} <span class="ui {{if not .Repository.NumTags}}gray{{else}}blue{{end}} small label">{{.Repository.NumTags}}</span>
+				<i class="octicon octicon-tag"></i> {{.i18n.Tr "repo.releases"}} <span class="ui {{if not .Repository.NumReleases}}gray{{else}}blue{{end}} small label">{{.Repository.NumReleases}}</span>
 			</a>
 			{{end}}