diff --git a/ansible/site.yml b/ansible/site.yml
index 77d3f2905c871e389ff05d2ac7eca457bad31250..ec2d43156baf76f64e00357ee937109836f09004 100644
--- a/ansible/site.yml
+++ b/ansible/site.yml
@@ -10,8 +10,9 @@
   gather_facts: false
   tasks:
     - setup:
-  tags: always
-
+      when:
+        - (play_hosts | length) == (groups['all'] | length)
+  
 # NOTE(pbourke): This case covers deploying subsets of hosts using --limit. The
 # limit arg will cause the first play to gather facts only about that node,
 # meaning facts such as IP addresses for rabbitmq nodes etc. will be undefined