diff --git a/ghost/admin/app/components/gh-nav-menu/main.hbs b/ghost/admin/app/components/gh-nav-menu/main.hbs
index 525fd3d377..036d2ce411 100644
--- a/ghost/admin/app/components/gh-nav-menu/main.hbs
+++ b/ghost/admin/app/components/gh-nav-menu/main.hbs
@@ -100,15 +100,19 @@
{{#if (eq this.router.currentRouteName "members.index")}}
{{svg-jar "members"}}Members
- {{#unless this.memberCountLoading}}
- {{format-number this.membersStats.memberCount}}
- {{/unless}}
+ {{#let (members-count-fetcher) as |count|}}
+ {{#unless count.isLoading}}
+ {{format-number count.count}}
+ {{/unless}}
+ {{/let}}
{{else}}
{{svg-jar "members"}}Members
- {{#unless this.memberCountLoading}}
- {{format-number this.membersStats.memberCount}}
- {{/unless}}
+ {{#let (members-count-fetcher) as |count|}}
+ {{#unless count.isLoading}}
+ {{format-number count.count}}
+ {{/unless}}
+ {{/let}}
{{/if}}
diff --git a/ghost/admin/app/components/gh-nav-menu/main.js b/ghost/admin/app/components/gh-nav-menu/main.js
index 1f8b8cea21..83892f9f98 100644
--- a/ghost/admin/app/components/gh-nav-menu/main.js
+++ b/ghost/admin/app/components/gh-nav-menu/main.js
@@ -10,7 +10,6 @@ import {htmlSafe} from '@ember/template';
import {inject} from 'ghost-admin/decorators/inject';
import {inject as service} from '@ember/service';
import {tagName} from '@ember-decorators/component';
-import {task} from 'ember-concurrency';
@classic
@tagName('')
@@ -33,7 +32,6 @@ export default class Main extends Component.extend(ShortcutsMixin) {
iconStyle = '';
iconClass = '';
- memberCountLoading = true;
shortcuts = null;
@match('router.currentRouteName', /^settings\.integration/)
@@ -69,10 +67,6 @@ export default class Main extends Component.extend(ShortcutsMixin) {
didReceiveAttrs() {
super.didReceiveAttrs(...arguments);
this._setIconStyle();
-
- if (this.session.user && this.session.user.isAdmin) {
- this._loadMemberCountsTask.perform();
- }
}
didInsertElement() {
@@ -114,17 +108,6 @@ export default class Main extends Component.extend(ShortcutsMixin) {
this.explore.openExploreWindow();
}
- @task(function* () {
- try {
- this.set('memberCountLoading', true);
- yield this.membersStats.fetchMemberCount();
- this.set('memberCountLoading', false);
- } catch (e) {
- return false;
- }
- })
- _loadMemberCountsTask;
-
_setIconStyle() {
let icon = this.icon;