diff --git a/cmix/client.go b/cmix/client.go
index 996cacdb46016a7675cde906cbcd9c66dc68c766..fb326f72ac1fcdc8c75cf7e61645bbca8f4fc061 100644
--- a/cmix/client.go
+++ b/cmix/client.go
@@ -246,6 +246,9 @@ func (c *client) Follow(report ClientErrorReport) (stoppable.Stoppable, error) {
 	// Start the processes for the identity handler
 	multi.Add(c.Tracker.StartProcesses())
 
+	//Start the critical processing thread
+	multi.Add(c.crit.startProcessies())
+
 	return multi, nil
 }
 
diff --git a/cmix/critical.go b/cmix/critical.go
index 03ebfc7b56429b0fd0e8f588fa5ca2fe2e809491..719e6d9f0eff0774bdf083f01f07034a58ab6127 100644
--- a/cmix/critical.go
+++ b/cmix/critical.go
@@ -1,6 +1,8 @@
 package cmix
 
 import (
+	"time"
+
 	jww "github.com/spf13/jwalterweatherman"
 	"gitlab.com/elixxir/client/cmix/health"
 	"gitlab.com/elixxir/client/stoppable"
@@ -10,7 +12,6 @@ import (
 	"gitlab.com/elixxir/primitives/states"
 	"gitlab.com/xx_network/primitives/id"
 	"gitlab.com/xx_network/primitives/id/ephemeral"
-	"time"
 )
 
 const criticalRawMessagesKey = "RawCriticalMessages"
@@ -58,6 +59,12 @@ func newCritical(kv *versioned.KV, hm health.Monitor,
 	return c
 }
 
+func (c *critical) startProcessies() *stoppable.Single {
+	stop := stoppable.NewSingle("criticalStopper")
+	go c.runCriticalMessages(stop)
+	return stop
+}
+
 func (c *critical) runCriticalMessages(stop *stoppable.Single) {
 	for {
 		select {