diff --git a/app/modules/crawler/lib/sync.ts b/app/modules/crawler/lib/sync.ts
index 02dc0cf56e1f6bc115ba64842f3398e37f392e28..949b5e1f6086e9262ed760786b1eba0c368dcb40 100644
--- a/app/modules/crawler/lib/sync.ts
+++ b/app/modules/crawler/lib/sync.ts
@@ -60,6 +60,7 @@ export class Synchroniser extends stream.Duplex {
     this.watcher.onEvent('storageChange',  (pct: number) => this.push({ saved: pct }))
     this.watcher.onEvent('appliedChange',  (pct: number) => this.push({ applied: pct }))
     this.watcher.onEvent('sbxChange',      (pct: number) => this.push({ sandbox: pct }))
+    this.watcher.onEvent('peersChange',    (pct: number) => this.push({ peersSync: pct }))
 
     if (interactive) {
       this.logger.mute();
@@ -366,8 +367,9 @@ export class Synchroniser extends stream.Duplex {
             leavesToAdd.push(leaf);
           }
         });
-        for (const leaf of leavesToAdd) {
+        for (let i = 0; i < leavesToAdd.length; i++) {
           try {
+            const leaf = leavesToAdd[i]
             const json3 = await getPeers({ "leaf": leaf });
             const jsonEntry = json3.leaf.value;
             const sign = json3.leaf.value.signature;
@@ -379,11 +381,13 @@ export class Synchroniser extends stream.Duplex {
             entry.block = jsonEntry.block
             entry.signature = sign;
             this.watcher.writeStatus('Peer ' + entry.pubkey);
+            this.watcher.peersPercent((i + 1) / leavesToAdd.length * 100)
             await this.PeeringService.submitP(entry, false, to === undefined);
           } catch (e) {
             this.logger.warn(e && e.message || e)
           }
         }
+        this.watcher.peersPercent(100)
       }
       else {
         this.watcher.writeStatus('Peers already known');
diff --git a/app/modules/crawler/lib/sync/Watcher.ts b/app/modules/crawler/lib/sync/Watcher.ts
index ae11418a78a6fa7455f7747e73a4ea33daba3e18..0b328c6400e307e9499c1de629fc27b1cebaefcf 100644
--- a/app/modules/crawler/lib/sync/Watcher.ts
+++ b/app/modules/crawler/lib/sync/Watcher.ts
@@ -1,4 +1,5 @@
 import * as events from "events"
+import {cliprogram} from "../../../../lib/common-libs/programOptions"
 
 const multimeter   = require('multimeter')
 
@@ -8,10 +9,11 @@ export interface Watcher {
   storagePercent(pct?: number): number
   appliedPercent(pct?: number): number
   sbxPercent(pct?: number): number
+  peersPercent(pct?: number): number
   end(): void
 }
 
-export type EventName = 'downloadChange'|'storageChange'|'appliedChange'|'sbxChange'
+export type EventName = 'downloadChange'|'storageChange'|'appliedChange'|'sbxChange'|'peersChange'
 
 export class EventWatcher extends events.EventEmitter implements Watcher {
 
@@ -39,6 +41,10 @@ export class EventWatcher extends events.EventEmitter implements Watcher {
     return this.change('sbxChange', (pct) => this.innerWatcher.sbxPercent(pct), pct)
   }
 
+  peersPercent(pct?: number): number {
+    return this.change('peersChange', (pct) => this.innerWatcher.peersPercent(pct), pct)
+  }
+
   change(changeName: EventName, method: (pct?: number) => number, pct?: number) {
     if (pct !== undefined && method() < pct) {
       this.emit(changeName, pct || 0)
@@ -65,6 +71,7 @@ export class MultimeterWatcher implements Watcher {
   private savedBar:any
   private downloadBar:any
   private sbxBar:any
+  private peersBar:any
   private writtens:string[] = []
 
   constructor() {
@@ -80,6 +87,10 @@ export class MultimeterWatcher implements Watcher {
     this.appliedBar  = this.createBar('Apply',    5)
     this.sbxBar      = this.createBar('Sandbox',  6)
 
+    if (!cliprogram.nopeers) {
+      this.peersBar  = this.createBar('Peers',    7)
+    }
+
     this.multi.write('\nStatus: ');
 
     this.charm.position( (x:number, y:number) => {
@@ -93,6 +104,9 @@ export class MultimeterWatcher implements Watcher {
     this.savedBar.percent(0);
     this.appliedBar.percent(0);
     this.sbxBar.percent(0);
+    if (!cliprogram.nopeers) {
+      this.peersBar.percent(0);
+    }
   }
 
   writeStatus(str:string) {
@@ -120,6 +134,13 @@ export class MultimeterWatcher implements Watcher {
     return this.sbxBar.percent(pct)
   }
 
+  peersPercent(pct:number) {
+    if (!cliprogram.nopeers) {
+      return this.peersBar.percent(pct)
+    }
+    return 0
+  }
+
   end() {
     this.multi.write('\nAll done.\n');
     this.multi.destroy();
@@ -177,6 +198,10 @@ export class LoggerWatcher implements Watcher {
     return 0
   }
 
+  peersPercent(pct:number) {
+    return 0
+  }
+
   change(prop: 'downPct'|'savedPct'|'appliedPct', pct:number) {
     if (pct !== undefined) {
       let changed = pct > this[prop]