diff --git a/changes/bug29017 b/changes/bug29017
new file mode 100644
index 0000000000000000000000000000000000000000..5c4a53c43f203059f058db450b3fbdce4df57da9
--- /dev/null
+++ b/changes/bug29017
@@ -0,0 +1,4 @@
+  o Minor bugfixes (stats):
+    - When ExtraInfoStatistics is 0, stop including PaddingStatistics in
+      relay and bridge extra-info documents. Fixes bug 29017;
+      bugfix on 0.3.1.1-alpha.
diff --git a/doc/tor.1.txt b/doc/tor.1.txt
index eb1603743007d260e5be662c2cebc2139eafad2e..52f5bfa0c306d9d08be61cfd897b59ee9390f177 100644
--- a/doc/tor.1.txt
+++ b/doc/tor.1.txt
@@ -2340,7 +2340,7 @@ is non-zero):
     extra-info document. (Default: 0)
 
 [[PaddingStatistics]] **PaddingStatistics** **0**|**1**::
-    Relays only.
+    Relays and bridges only.
     When this option is enabled, Tor collects statistics for padding cells
     sent and received by this relay, in addition to total cell counts.
     These statistics are rounded, and omitted if traffic is low. This
diff --git a/src/feature/relay/router.c b/src/feature/relay/router.c
index e79681540938e45ed0703bca16b9a9a5a472bbe1..cdd032f78de12a9cd12ff3e3a2a5cc01a3471256 100644
--- a/src/feature/relay/router.c
+++ b/src/feature/relay/router.c
@@ -3028,12 +3028,11 @@ extrainfo_dump_to_string(char **s_out, extrainfo_t *extrainfo,
                         "conn-bi-direct", now, &contents) > 0) {
       smartlist_add(chunks, contents);
     }
-  }
-
-  if (options->PaddingStatistics) {
-    contents = rep_hist_get_padding_count_lines();
-    if (contents)
-      smartlist_add(chunks, contents);
+    if (options->PaddingStatistics) {
+      contents = rep_hist_get_padding_count_lines();
+      if (contents)
+        smartlist_add(chunks, contents);
+    }
   }
 
   /* Add information about the pluggable transports we support. */