diff --git a/network/follow.go b/network/follow.go
index 2c2ed841a29c7ab246ba64832d68b7e765bce43c..a52eff6923bb4d03ef09034608cdacbe783da807 100644
--- a/network/follow.go
+++ b/network/follow.go
@@ -34,6 +34,9 @@ import (
 	"time"
 )
 
+const bloomFilterSize = 71888 // In Bits
+const bloomFilterHashes = 8
+
 //comms interface makes testing easier
 type followNetworkComms interface {
 	GetHost(hostId *id.ID) (*connect.Host, bool)
@@ -99,7 +102,10 @@ func (m *manager) follow(rng csprng.Source, comms followNetworkComms) {
 	var filterList []*bloom.Ring
 	for _, f := range pollResp.BloomFilters {
 		jww.INFO.Printf("Bloom Filter received: %v", f)
-		filter := &bloom.Ring{}
+		filter, err := bloom.InitByParameters(bloomFilterSize, bloomFilterHashes)
+		if err != nil {
+			jww.FATAL.Panicf("Unable to create a bloom filter: %v", err)
+		}
 		if err := filter.UnmarshalBinary(f); err != nil {
 			jww.WARN.Printf("Failed to unmarshal filter: %+v", err)
 			continue