diff --git a/erpnext/manufacturing/doctype/bom_update_log/bom_update_log.py b/erpnext/manufacturing/doctype/bom_update_log/bom_update_log.py
index af5ff8e..c3f52d4 100644
--- a/erpnext/manufacturing/doctype/bom_update_log/bom_update_log.py
+++ b/erpnext/manufacturing/doctype/bom_update_log/bom_update_log.py
@@ -6,6 +6,8 @@
 import frappe
 from frappe import _
 from frappe.model.document import Document
+from frappe.query_builder import DocType, Interval
+from frappe.query_builder.functions import Now
 from frappe.utils import cint, cstr
 
 from erpnext.manufacturing.doctype.bom_update_log.bom_updation_utils import (
@@ -22,6 +24,17 @@
 
 
 class BOMUpdateLog(Document):
+	@staticmethod
+	def clear_old_logs(days=None):
+		days = days or 90
+		table = DocType("BOM Update Log")
+		frappe.db.delete(
+			table,
+			filters=(
+				(table.modified < (Now() - Interval(days=days))) & (table.update_type == "Update Cost")
+			),
+		)
+
 	def validate(self):
 		if self.update_type == "Replace BOM":
 			self.validate_boms_are_specified()
diff --git a/erpnext/manufacturing/doctype/bom_update_log/bom_update_log_list.js b/erpnext/manufacturing/doctype/bom_update_log/bom_update_log_list.js
index e39b563..bc709d8 100644
--- a/erpnext/manufacturing/doctype/bom_update_log/bom_update_log_list.js
+++ b/erpnext/manufacturing/doctype/bom_update_log/bom_update_log_list.js
@@ -1,6 +1,6 @@
 frappe.listview_settings['BOM Update Log'] = {
 	add_fields: ["status"],
-	get_indicator: function(doc) {
+	get_indicator: (doc) => {
 		let status_map = {
 			"Queued": "orange",
 			"In Progress": "blue",
@@ -9,5 +9,22 @@
 		};
 
 		return [__(doc.status), status_map[doc.status], "status,=," + doc.status];
-	}
+	},
+	onload: () => {
+		if (!frappe.model.can_write("Log Settings")) {
+			return;
+		}
+
+		let sidebar_entry = $(
+			'<ul class="list-unstyled sidebar-menu log-retention-note"></ul>'
+		).appendTo(cur_list.page.sidebar);
+		let message = __("Note: Automatic log deletion only applies to logs of type <i>Update Cost</i>");
+		$(`<hr><div class='text-muted'>${message}</div>`).appendTo(sidebar_entry);
+
+		frappe.require("logtypes.bundle.js", () => {
+			frappe.utils.logtypes.show_log_retention_message(cur_list.doctype);
+		});
+
+
+	},
 };
\ No newline at end of file
