diff --git a/src/ipa/libipa/agc.cpp b/src/ipa/libipa/agc.cpp
index cf2ae19737..416178177e 100644
--- a/src/ipa/libipa/agc.cpp
+++ b/src/ipa/libipa/agc.cpp
@@ -732,6 +732,13 @@ int AgcAlgorithm::configure(agc::Session &session, agc::ActiveState &state,
 		},
 	}, impl_);
 
+	if (session.autoAllowed) {
+		/* By default do not run faster than 30fps. */
+		state.minFrameDuration = std::clamp(
+			utils::Duration(1.0s / 30),
+			session.minFrameDuration, session.maxFrameDuration);
+	}
+
 	/* \todo Move this to the `Camera` class. */
 	config.ctrlMap[&controls::AeEnable] = ControlInfo{
 		false, session.autoAllowed, session.autoAllowed
