diff --git a/src/config.c b/src/config.c
index 4325d949f732aeef9b35699717b7d414839cd257..6cb3bd172a2f20fc7045b55f92135f4be6265c70 100644
--- a/src/config.c
+++ b/src/config.c
@@ -3117,7 +3117,12 @@ uint32_t cntlr_mld_id_diff(struct controller_config *curr,
 			continue;
 
 		if (prev_mld->num_affiliated_aps != curr_mld->num_affiliated_aps) {
-			if (curr_mld->multi_ap & 0x01) {
+			if (curr_mld->num_affiliated_aps == 0 ||
+			    prev_mld->num_affiliated_aps == 0) {
+				diff |= CONFIG_DIFF_CREDENTIALS;
+				/* AP-Autoconfiguration Renew covers all cases */
+				return diff;
+			} else if (curr_mld->multi_ap & 0x01) {
 				diff |= CONFIG_DIFF_BSTA_MLD;
 				diff |= CONFIG_DIFF_AP_MLD;
 				multi_ap |= 0x01;