diff --git a/datafusion/substrait/Cargo.toml b/datafusion/substrait/Cargo.toml
index 60e35cc966d2..a60b70a963e9 100644
--- a/datafusion/substrait/Cargo.toml
+++ b/datafusion/substrait/Cargo.toml
@@ -54,3 +54,10 @@ tokio = { workspace = true }
 default = ["physical"]
 physical = ["datafusion/parquet"]
 protoc = ["substrait/protoc"]
+
+[package.metadata.docs.rs]
+# Use default features ("physical") for docs, plus "protoc". "protoc" is needed
+# to get a consistent version of the protobuf compiler in the docs build;
+# without that, an outdated protobuf compiler may fail to compile the protobuf
+# files as it did in versions 42.0.0 through 44.0.0.
+all-features = true