diff --git a/client/fingerprint/memory.go b/client/fingerprint/memory.go
index <HASH>..<HASH> 100644
--- a/client/fingerprint/memory.go
+++ b/client/fingerprint/memory.go
@@ -35,7 +35,7 @@ func (f *MemoryFingerprint) Fingerprint(cfg *config.Config, node *structs.Node) 
 		if node.Resources == nil {
 			node.Resources = &structs.Resources{}
 		}
-		node.Resources.MemoryMB = int(memInfo.Total)
+		node.Resources.MemoryMB = int(memInfo.Total / 1024 / 1024)
 	}
 
 	return true, nil
diff --git a/client/fingerprint/memory_test.go b/client/fingerprint/memory_test.go
index <HASH>..<HASH> 100644
--- a/client/fingerprint/memory_test.go
+++ b/client/fingerprint/memory_test.go
@@ -20,8 +20,10 @@ func TestMemoryFingerprint(t *testing.T) {
 		t.Fatalf("should apply")
 	}
 
-	if node.Attributes["memory.totalbytes"] == "" {
-		t.Fatalf("Missing memory.totalbyes")
+	assertNodeAttributeContains(t, node, "memory.totalbytes")
+
+	if node.Resources == nil {
+		t.Fatalf("Node Resources was nil")
 	}
 
 }
convert to MB for MemoryMB, and update test