diff --git a/src/knot/updates/zone-update.c b/src/knot/updates/zone-update.c
index 42ee8eee0d31094ee6c835c9d70b1b0f6fb1a3f8..3c56c81521662558aa6057a8b7da0771b4376c02 100644
--- a/src/knot/updates/zone-update.c
+++ b/src/knot/updates/zone-update.c
@@ -693,7 +693,9 @@ static int commit_journal(conf_t *conf, zone_update_t *update)
 	if (update->flags & UPDATE_NO_CHSET) {
 		zone_diff_t diff;
 		get_zone_diff(&diff, update);
-		return zone_diff_store(conf, update->zone, &diff);
+		if (content != JOURNAL_CONTENT_NONE && !zone_update_no_change(update)) {
+			ret = zone_diff_store(conf, update->zone, &diff);
+		}
 	} else if ((update->flags & UPDATE_INCREMENTAL) ||
 	           (update->flags & UPDATE_HYBRID)) {
 		changeset_t *extra = (update->flags & UPDATE_EXTRA_CHSET) ? &update->extra_ch : NULL;