{"id":7754,"date":"2024-09-13T04:26:42","date_gmt":"2024-09-13T04:26:42","guid":{"rendered":"https:\/\/www.hashmicro.com\/ph\/blog\/?p=7754"},"modified":"2026-03-11T09:25:07","modified_gmt":"2026-03-11T09:25:07","slug":"inventory-shrinkage","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/","title":{"rendered":"What is Inventory Shrinkage? Definition and Ways to Avoid"},"content":{"rendered":"<p data-start=\"301\" data-end=\"570\">Inventory shrinkage is a challenge many companies face, whether due to theft, damage, or simple record-keeping errors. Left unaddressed, these issues can significantly impact profitability and daily operations.<\/p>\n<p data-start=\"845\" data-end=\"1127\">In today\u2019s competitive market, understanding how shrinkage happens (and how to stop it) can give your business a real advantage. In this article, we\u2019ll explore the causes, effects, and practical steps to prevent shrinkage so you can protect your assets and strengthen your operations.<\/p>\n<table style=\"border-collapse: coacllapse; background-color: #fffacd; border-radius: 25px 25px 25px 25px;\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"padding: 15px; border: none;\">\n<h3 style=\"margin-bottom: 10px;\"><span style=\"background-color: #990000; color: #ffffff; padding: 5px;\"><b>Key Takeaways<\/b><\/span><\/h3>\n<ul>\n<li><a href=\"#a\">Inventory shrinkage refers<\/a> to any unexplained loss of stock, while inventory loss refers <span style=\"font-weight: 400;\">to any stock reduction that the business can identify.\u00a0<\/span><\/li>\n<li><a href=\"#b\">Implementing stringent security<\/a> measures, including CCTV, controlled access, and employee training, is vital to mitigate risks of theft and errors that lead to inventory shrinkage.<\/li>\n<li><a href=\"#c\">Inventory shrinkage can happen<\/a> in warehousing, distribution, and retail. Each environment has different reasons for inventory shrinkage. Using advanced tools can help solve inventory shrinkage in all three environments.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span data-sheets-root=\"1\"><div id=\"toc_group_article\" style=''>\r\n\t<p style='font-size:25px;font-weight:bold; margin-bottom:0px'>\r\n\t\tTable of Contents\r\n\t<\/p>\r\n\t<ul id=\"list_toc\" class='list_toc'><\/ul>\r\n<\/div>\r\n\r\n<div id=\"placeholder-toc\"><\/div>\r\n<div id=\"toc\">\r\n    <div class=\"header\">\r\n\t<span class=\"toc-title\" id=\"toc-title\">Content Lists<\/span>\t\r\n\t <i class=\"toc-icon\">\r\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"30\" height=\"30\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#000\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"header-icon\">\r\n          <path d=\"m6 9 6 6 6-6\" \/>\r\n        <\/svg>\r\n      <\/i>\r\n\t<\/div>\r\n    <div class=\"list\">\r\n      <ul id=\"toc-list\"><\/ul>\r\n    <\/div>\r\n <\/div>\r\n\r\n<style>\r\n\/* Simple styling for the TOC *\/\r\n\t\r\n\t#toc ul li:last-child {\r\n    padding-bottom: 16px; \/* Adjust the value as needed *\/\r\n}\r\n\r\n.td-fix-index {\r\n\t transform: unset !important;\r\n     -webkit-transform: unset !important; \r\n}\r\n.footer-contact .td-fix-index {\r\n\t transform: translateZ(0) !important;\r\n     -webkit-transform: translateZ(0) !important; \r\n}\r\n\t.tdb_single_content .tdb-block-inner.td-fix-index{\r\n\t\tposition: static;\r\n\t}\r\n\t\r\n\r\n\t\r\n#toc {\r\n  background-color: #FFF;\r\n\tpadding: 17px 24px 20px 24px !important;\r\n  margin-bottom: 20px;\r\n\/*   border: 1px solid #9C171E; *\/\r\n  border-radius: 6px;\r\n\tdisplay: none;\r\n  max-width: 100%;\r\n  transition: .4s ease height;\r\n\tmargin-left: 0;\r\n\toverflow: hidden;\r\n}\r\n\r\n#toc .header{\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: space-between;\r\n\tbackground-color: transparent;\r\n}\r\n\t\r\n\t#toc.sticky .header{\r\n\t\tpadding: 4px 0;\r\n\t}\r\n\t\r\n.header p{\r\n  font-size: 18px !important;\r\n  font-weight: 600 !important;\r\n  color: #393939;\r\n   margin-bottom: 0;\r\n  \/* margin-top: 20px; *\/\r\n}\r\n\r\n.toc-icon{\r\n  float: right;\r\n\/*   visibility: hidden; *\/\r\n}\r\n\r\n\t.toc-title{\r\n\t\tmargin-right: auto;\r\n\/* \t\tpadding-left: 20px; *\/\r\n\t\tfont-weight: 600;\r\n\t\talign-self: center;\t}\t\r\n\r\n#toc ul {\r\n  list-style-type: none;\r\n  padding-left: 0;\r\n  padding-top: 20px;\r\n  margin-top: 0px;\r\n}\r\n\t\r\n#toc.sticky ul{\r\n\toverflow-y: auto;\r\n\tmax-height: 250px;\r\n\tmargin-top: 0px;\r\n\tpadding-top: 20px;\r\n\/* \tborder-top: 1px solid #d3d3d3; *\/\r\n}\r\n\t\r\n#toc ul li {\r\n\/*   margin-bottom: 10px; *\/\r\n  margin-bottom: 10px;\r\n\tmargin-left: 0;\r\n\ttransition: .2s ease;\r\n\tcursor: pointer;\r\n}\r\n\t\r\n\t#toc.sticky ul li {\r\n\t  margin-right: 10px;\r\n\t}\r\n\t\r\n.td-post-content #toc-list li a:hover, .td-post-content #toc-list a.active{\r\n\tbackground-color: #FFF;\r\n\/* \tpadding: 8px 16px 8px 16px; *\/\r\n\tpadding: 4px 16px 4px 16px;\r\n\tborder-radius: 6px;\r\n\tcolor: #9c171e !important;\r\n\tfont-weight: 600 !important;\r\n}\r\n\t\r\n\t.td-post-content #toc-list li:hover a, .td-post-content #toc-list a.active{\r\n\t\tcolor: #9C171E !important;\r\n\t\tfont-weight: 600 !important;\r\n\t}\r\n\t\r\n.td-post-content #toc-list a.active{\r\n\tfont-weight: bold !important;\r\n\tcolor: #9C171E !important;\r\n}\r\n\t\r\n#toc a, .td-post-content #toc-list a {\r\n  text-decoration: none;\r\n  color: #ea1717 !important;\r\n  transition: .2s ease;\r\n\tfont-weight: 400 !important;\r\n\tdisplay: block;\r\n\t\r\n\tpadding: 4px 16px 4px 0;\r\n}\r\n\r\n#toc.sticky {\r\n  position: fixed;\r\n\/*   top: 73px; *\/\r\n\tbottom: 0;\r\n  z-index: 100; \r\n  box-shadow: 0 2px 5px rgba(0,0,0,0.1); \r\n\twidth: 100%; \r\n\tbackground-color: #FFF;\r\n\/* \tbackground-color: #FFF1F1; *\/\r\n\tborder-bottom: 1px solid #ea1717;\r\n\/*   border: 1px solid #393939; *\/\r\n  box-shadow: 0px 0px 14px 0px #00000040;\r\n  cursor: pointer;\r\n\tanimation: fadein .3s ease;\r\n\tpadding: 12px 16px !important;\r\n}\r\n\t\r\n\t.fadein{\r\n\t\tanimation: fadein .3s ease;\r\n\t}\r\n\t\r\n\t.fadeout{\r\n\t\tanimation: fadeout .3s ease;\r\n\t}\r\n\t\r\n\t\r\n\t@keyframes fadein{\r\n\t\t0% {\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@keyframes fadeout{\r\n\t\t0% {\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t}\r\n\r\n\t\r\n#toc.sticky .header p{\r\n\tmargin-bottom: 10px;\r\n\tmargin-top: 10px;\r\n}\r\n\r\n#toc.sticky .toc-icon{\r\n  visibility: visible;\r\n\/* \ttransition: 0.4s ease; *\/\r\n}\r\n\t\r\n\t.toc-icon{\r\n\t\talign-items: center;\r\n    \tdisplay: flex;\r\n\t}\r\n\t\r\n\tsvg.header-icon{\r\n\/* \t\tbackground-color: #9c171e; *\/\r\n\t\tbackground-color: #FFF;\r\n\t\tborder-radius: 30px;\r\n\t\tpadding: 5px;\r\n\t}\r\n\r\n#toc.sticky .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\t\r\n\t#toc .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\r\n#toc .header.active .toc-icon{\r\n\ttransform: rotate(0deg); \r\n\topacity: 1;\r\n}\r\n\r\n\t#toc .header.active + .list {\r\n\t  max-height: 200px; \/* Adjust this value as needed *\/\r\n\t  opacity: 1;\r\n\t}\r\n\t\r\n\t#placeholder-toc{\r\n\/* \t\tdisplay: none; *\/\r\n\t}\r\n\t\r\n\t@media (min-width: 768px) and (max-width: 991px){\r\n\t\t#toc.sticky{\r\n\/* \t\t\ttop: 104px; *\/\r\n\t\t\tbottom: 0px;\r\n\t\t}\r\n\t\t\r\n\t\t#toc{\r\n\t\t\twidth: unset !important;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width: 767px){\r\n\t\t#toc{\r\n\t\t\twidth: 100% !important;\r\n\t\t\tdisplay: inline-block;\r\n\t\t}\r\n\t\t\r\n\t\t#toc.sticky{\r\n\t\t\twidth: 84% !important;\r\n\/* \t\t\ttop: 81px; *\/\r\n\t\t\tbottom: 60px;\r\n\t\t\tmargin-left: auto;\r\n\t\t\tmargin-right: auto;\r\n\t\t\tpadding: 0 16px;\r\n\/* \t\t\tright: 5%; *\/\r\n\t\t}\r\n\t}\r\n<\/style>\r\n\r\n<style>\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc > li > ul {padding-left: 20px;margin-bottom: 0;}\r\n\t#list_toc{height:max-content;transition:ease-in-out}\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc_float li.active > a {color:#b1252d;background: #ffe1e3;}\r\n\t#list_toc_float li a {padding:3px 7px}\r\n\t#list_toc_float li a {\r\n\t\tdisplay: block;\r\n\t\tcolor:#000;\r\n\t\tmargin-bottom: 10px;\r\n\t\ttransition:all 0.2s ease-in-out;\r\n\t\tfont-size:15px\r\n\t}\r\n\t#list_toc_float li{list-style:none;list-style-position:inside; margin-left:0;}\r\n\t#list_toc_float a:hover{color:#b1252d;}\r\n\t\r\n\t#list_toc_float li a{margin-bottom:0px}\r\n\t#toc_group_float{\r\n\t\tline-height: 24px;\r\n\t\tmax-height: calc(100vh - 100px);\r\n\t\toverflow: auto;\r\n\t\tz-index: 99;\r\n\t\tdisplay:none!important;\r\n\t\tbackground:#fff;\r\n\t\ttransition:all 0.5s linear\r\n\t}\r\n\t\r\n\t@media (min-width:1019px){\r\n\t\t#toc_group_float {\r\n\t\t\tdisplay:block!important;\r\n\t\t\t}\r\n\t\t\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width:768px){\r\n\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t \/* custom scrollbar style *\/\r\n::-webkit-scrollbar {\r\n    width: 7px;\r\n}\r\n::-webkit-scrollbar-track {\r\n    background: #d7a2a4;\r\n}\r\n::-webkit-scrollbar-thumb {\r\n    background: #b1252d;\r\n    border-radius: 15px;\r\n}\t\t\r\n\r\n<\/style>\r\n\r\n<script>\r\n\tdocument.addEventListener('DOMContentLoaded', function() {\r\n\t\t\/\/ Function to handle click on all <a> elements with href starting with #\r\n\t\tfunction handleTitleClick(event) {\r\n\t\t\tevent.preventDefault();\r\n\t\t\tconst targetId = this.getAttribute('href').substring(1);\r\n\t\t\tconst targetElement = document.getElementById(targetId);\r\n\r\n\t\t\tif (targetElement) {\r\n\t\t\t\tconst headerHeight = document.querySelector('#toc .header').offsetHeight;\r\n\t\t\t\tconst navbarHeight = document.getElementById('tdi_34') ? document.getElementById('tdi_34').offsetHeight : 0;\r\n\t\t\t\tconst windowHeight = window.innerHeight;\r\n\t\t\t\tconst targetOffset = targetElement.offsetTop;\r\n\t\t\t\tconst scrollTo = targetOffset + (windowHeight \/ 2) + (headerHeight) - navbarHeight - 40;\r\n\r\n\t\t\t\twindow.scrollTo({\r\n\t\t\t\t\ttop: scrollTo,\r\n\t\t\t\t\tbehavior: 'smooth'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\/\/ Add event listener for all <a> elements in toc-list and list-toc\r\n\t\tconst titleLinks = document.querySelectorAll('#toc-list a, #list_toc a');\r\n\t\ttitleLinks.forEach(link => {\r\n\t\t\tlink.addEventListener('click', handleTitleClick);\r\n\t\t});\r\n\t});\r\n<\/script>\r\n\r\n<!-- ToC List for mobile -->\r\n<script>\r\n \/\/ Generate TOC based on headings\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  \/\/ Get the element that will contain the TOC\r\n  const tocList = document.getElementById('toc-list');\r\n\r\n  \/\/ Get the element with class 'td-post-content'\r\n  const article = document.querySelector('.td-post-content');\r\n\r\n  \/\/ Find all h2 elements within the article\r\n  const headers = article.getElementsByTagName('h2');\r\n\r\n  \/\/ Loop through the h2 elements and create a list item for each one\r\n  for (let i = 0; i < headers.length; i++) {\r\n    const header = headers[i];\r\n    const headerText = header.textContent;\r\n\/\/     const headerId = 'header-' + i;\r\n    const headerId = headerText\r\n    .toLowerCase()\r\n    .trim()\r\n    .replace(\/[^\\w\\s-]\/g, '')  \/\/ hapus tanda baca\r\n    .replace(\/\\s+\/g, '-'); \/\/ ganti spasi jadi \"-\"\r\n\r\n    \/\/ Set an ID for the header if it doesn't have one\r\n    header.setAttribute('id', headerId);\r\n\r\n    \/\/ Create a list item for the TOC\r\n    const listItem = document.createElement('li');\r\n\r\n    \/\/ Create a link for the list item\r\n    const link = document.createElement('a');\r\n    link.setAttribute('href', '#' + headerId);\r\n    link.textContent = headerText;\r\n\r\n    \/\/ Append the link to the list item\r\n    listItem.appendChild(link);\r\n\r\n    \/\/ Append the list item to the TOC list\r\n    tocList.appendChild(listItem);\r\n  }\r\n});\r\n\r\n\/\/ Keep height and placement of content using placeholder in place of TOC\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const placeholderToc = document.querySelector('#placeholder-toc');\r\n\r\n  function setPlaceholderHeight() {\r\n    placeholderToc.style.height = `${toc.offsetHeight}px`;\r\n  }\r\n\r\n  \/\/ Set the initial height of the placeholder\r\n  setPlaceholderHeight();\r\n\r\n  \/\/ Update the height on window resize\r\n  window.addEventListener('resize', setPlaceholderHeight);\r\n});\r\n  const tocTitle = document.querySelector('#toc-title');\r\n\r\n\/\/ Sticky TOC and update heading\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const footer = document.querySelector('.td-footer-template-wrap');\r\n  const tocParent = toc.parentElement;\r\n  const divTop = tocParent.getBoundingClientRect().top + window.pageYOffset;\r\n  const tocHeight = toc.offsetHeight;\r\n  const triggerPoint = divTop + tocHeight + 700;\r\n  const footerHeight = footer.offsetHeight;\r\n  const triggerFooterPoint = footer.getBoundingClientRect().top + window.pageYOffset - footerHeight - footerHeight - footerHeight;\r\n  const phtoc = document.querySelector('#placeholder-toc');\r\n  const headers = document.querySelectorAll('.td-post-content h2');\r\n  const navLinks = document.querySelectorAll('#toc-list a');\r\n\t\r\n\tconst panel2 = document.querySelector(\"#toc .list\");\r\n\tvar icon = document.querySelector(\".toc-icon\");\r\n\r\n  let activeLink = null; \/\/ Declare activeLink outside the loop\r\n\t\r\n  \/\/ Function to handle scroll and add\/remove .sticky class\r\n  function handleScroll() {\r\n    const windowTop = window.pageYOffset || document.documentElement.scrollTop;\r\n    let currentHeader = '';\r\n\r\n    \/\/ Highlight user progress as the heading comes\r\n    headers.forEach(header => {\r\n\t\tconst headerTop = header.offsetTop;\r\n\t\tconst headerHeight = header.clientHeight;\r\n\t\tif(window.innerWidth < 767){\r\n\t\t\ttocTitle.textContent = 'Table of Contents'; \/\/ Selalu pertahankan judul ini di mobile\r\n\t\t} else {\r\n\t\t\tif (window.scrollY >= (headerTop - headerHeight + 700)) {\r\n\t\t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\t\t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\t\t\t\ttocTitle.textContent = currentHeaderText;\r\n\t\t\t\tcurrentHeader = currentHeaderId;\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n    navLinks.forEach(link => {\r\n      link.classList.remove('active');\r\n      if(currentHeader != '') {\r\n\t\t  if (link.getAttribute('href').includes(currentHeader)) {\r\n\t\t\t  link.classList.add('active');\r\n\t\t  }\r\n\t  }\r\n    });\r\n\r\n    \/\/ Update TOC title if sticky\r\n    if (windowTop > triggerPoint) {\r\n      if (!toc.classList.contains('sticky')) {\r\n        phtoc.style.display = \"block\";\r\n        toc.classList.add('sticky');\r\n        toc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n        toc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n        toc.style.backgroundColor = \"#FFF\";\r\n\t\tpanel2.style.height = '0px';\r\n\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\t\t  if(window.innerWidth < 767){\r\n\t\t\t  tocTitle.textContent = 'Table of Contents'; \/\/ Reset title\r\n       \t\t  toc.style.width = '150px'; \/\/ Set width to match the parent element\r\n\t\t  }\r\n      }\r\n      if (currentHeader) {\r\n        tocTitle.textContent = activeLink ? activeLink.textContent : \"\"; \/\/ Update title only if activeLink exists\r\n      }\r\n    } else {\r\n      toc.classList.remove('sticky');\r\n      phtoc.style.display = \"none\";\r\n      toc.style.width = 'unset'; \/\/ Reset to original width\r\n      toc.style.backgroundColor = \"#FFF\";\r\n      tocTitle.textContent = 'Table of Contents'; \/\/ Reset title\r\n\t\tpanel2.style.height = panel2.scrollHeight + \"px\";\r\n\t\ticon.style.transform = \"rotate(180deg)\";\r\n    }\r\n  }\r\n\r\n    \/\/ Attach the scroll event listener to the window\r\n    window.addEventListener('scroll', handleScroll);\r\n\r\n    \/\/ Initial call to handleScroll to set the correct state on load\r\n    handleScroll();\r\n});\r\n\t\r\n\t\/\/ Open toggle TOC\r\n\t  document.addEventListener(\"DOMContentLoaded\", function() {\r\n\t\tvar tocHeader = document.querySelector(\"#toc .header\");\r\n\t\tvar toc = document.querySelector(\"#toc\");\r\n\t\tvar icon = document.querySelector(\".toc-icon\");\r\n\t\tconst tocTitle = document.querySelector('#toc-title');\r\n\t\tconst tocs = document.querySelector('#toc.sticky');\r\n \t\tconst tocParent = toc.parentElement;\t\t  \r\n\r\n\t\t  tocHeader.addEventListener(\"click\", function() {\r\n\t\t\tvar panel = this.nextElementSibling;\r\n\t\t\tif (panel.style.height !== '0px') { \/\/ Check if height is not 0px\r\n\t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\t\t\t\tif(window.innerWidth > 768){\r\n\t\t\t\t\tif(!toc.classList.contains('sticky')){\r\n\t\t\t\t\t\ttoc.style.width = \"unset\";\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (toc.classList.contains('sticky')){\r\n\t\t\t\t\t\ttoc.style.width = '${tocParent.offsetWidth}px';\r\n\t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif(window.innerWidth < 767){\r\n\t\t\t\t\ttoc.style.width = \"unset\"; \/\/ Reset width\r\n\t\t\t\t}\r\n\t\t\t\ttoc.style.backgroundColor = \"#FFF1F1\";\r\n\t\t\t} else {\r\n\t\t\t  panel.style.height = panel.scrollHeight + \"px\";\r\n\t\t\t  icon.style.transform = \"rotate(0deg)\";\r\n\t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\t\t\t  tocTitle.textContent = 'Table of Contents'; \/\/ Reset title\r\n\t\t\t\ttoc.style.paddingBottom = '24px';\r\n\t\t\t \tif(window.innerWidth < 767){\r\n\t\t\t\t\ttoc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t  });\r\n\r\n\t\t  \/\/ Close TOC when a link inside it is clicked\r\n\t\t  var tocLinks = document.querySelectorAll(\"#toc .list a\");\r\n\t\t  tocLinks.forEach(function(link) {\r\n\t\t\tlink.addEventListener(\"click\", function() {\r\n\t\t\t  var panel = document.querySelector(\"#toc .list\");\r\n\t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\t\t\t});\r\n\t\t  });\r\n\t\t});\r\n\t\r\n\/\/ \tmake the heading at the center of the viewport\r\n\/\/ \tdocument.addEventListener('DOMContentLoaded', function() {\r\n\/\/     \/\/ Add click event listener to all links in the TOC list\r\n\/\/     document.querySelectorAll('#toc-list a').forEach(anchor => {\r\n\/\/         anchor.addEventListener('click', function (e) {\r\n\/\/             e.preventDefault(); \/\/ Prevent the default behavior of jumping to the anchor\r\n\/\/             const targetId = this.getAttribute('href').substring(1); \/\/ Get the ID of the target element\r\n\/\/             const targetElement = document.getElementById(targetId); \/\/ Get the target element\r\n\r\n\/\/             if (targetElement) {\r\n\/\/                 const headerHeight = document.querySelector('#toc .header').offsetHeight; \/\/ Get the height of the fixed header\r\n\/\/                 const windowHeight = window.innerHeight; \/\/ Get the height of the viewport\r\n\/\/                 const targetOffset = targetElement.offsetTop; \/\/ Get the top offset of the target element\r\n\/\/                 const scrollTo = targetOffset + (windowHeight \/ 2) + (headerHeight); \/\/ Calculate the scroll position to center the target element\r\n\r\n\/\/                 \/\/ Scroll to the calculated position smoothly\r\n\/\/                 window.scrollTo({\r\n\/\/                     top: scrollTo,\r\n\/\/                     behavior: 'smooth'\r\n\/\/                 });\r\n\/\/             }\r\n\/\/         });\r\n\/\/     });\r\n\/\/ });\r\n<\/script>\r\n\r\n<script>\r\n    \/\/ Scrollspy function to highlight the active TOC item based on the scroll position\r\n  function scrollSpy(tocClass) {\r\n    const scrollPosition = window.scrollY;\r\n\r\n    \/\/ Find the active h2 and h3 headings based on their position in the corresponding TOC\r\n    let activeH2 = null;\r\n    let activeH3 = null;\r\n\r\n    const tocItems = document.querySelectorAll(`.${tocClass} li`);\r\n    tocItems.forEach(item => {\r\n      const a = item.querySelector('a');\r\n      if (!a) return;\r\n      const href = a.getAttribute('href');\r\n      const targetId = href.substring(1); \/\/ Remove the '#' from the href to get the target ID\r\n      const targetElement = document.getElementById(targetId);\r\n      if (!targetElement) return;\r\n\r\n      const targetTop = targetElement.getBoundingClientRect().top + scrollPosition;\r\n      const nextItem = item.nextElementSibling;\r\n      const nextTop = nextItem ? nextItem.getBoundingClientRect().top + scrollPosition : Infinity;\r\n\r\n      if (targetTop <= scrollPosition + 150) {\r\n        if (a.parentElement.parentElement === tocItems) {\r\n          \/\/ The h2 heading is at the root level of the TOC\r\n          activeH2 = { id: targetId, level: 'h2' };\r\n        } else {\r\n          \/\/ The h3 heading is nested under an h2 heading\r\n          const parentH2 = a.parentElement.parentElement.previousElementSibling;\r\n          if (parentH2) {\r\n            const h2Link = parentH2.querySelector('a');\r\n            if (h2Link) {\r\n              const h2Href = h2Link.getAttribute('href');\r\n              const h2Id = h2Href.substring(1);\r\n              activeH2 = { id: h2Id, level: 'h2' };\r\n            }\r\n          }\r\n          activeH3 = { id: targetId, level: 'h3' };\r\n        }\r\n      }\r\n\r\n      if (targetTop > scrollPosition + 150 && nextTop > scrollPosition + 150 && !activeH3) {\r\n        \/\/ Reset the activeH2 when there are no more active h3 headings\r\n        activeH2 = null;\r\n      }\r\n    });\r\n\r\n    \/\/ Update the active state for the TOC items\r\n    tocItems.forEach(item => {\r\n      item.classList.remove('active');\r\n      const a = item.querySelector('a');\r\n      if (a) {\r\n        const href = a.getAttribute('href');\r\n        const targetId = href.substring(1);\r\n        if ((activeH2 && activeH2.id === targetId) || (activeH3 && activeH3.id === targetId)) {\r\n          item.classList.add('active');\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  \/\/ Call scrollSpy for each TOC on window scroll\r\n  const tocClasses = ['list_toc', 'list_toc_float']; \/\/ Add other TOC class names here if you have more than two instances\r\n  tocClasses.forEach(tocClass => {\r\n    window.addEventListener('scroll', () => scrollSpy(tocClass));\r\n  });\r\n<\/script>\r\n\t\r\n\r\n<!-- ToC List for desktop side bar, diganti jadi inject by php, di code snippet \"Sidebar Accordion\" -->\r\n<!-- <script>\r\n\tdocument.addEventListener('DOMContentLoaded', function() {\r\n        let headerCounter = 0; \/\/ Counter to generate unique IDs\r\n\r\n\t\t\/\/ Function to generate ID in header0, header1, etc. format\r\n\t\tfunction formatId() {\r\n\t\t\treturn `header-${headerCounter++}`; \/\/ ID format: header0, header1, etc.\r\n\t\t}\r\n\r\n\/\/ \t\tfunction formatId(text) {\r\n\/\/             return text.trim().replace(\/[^\\w\\d]+\/g, '_');\r\n\/\/         }\r\n\t\r\n        \/\/ Function to create nested list\r\n        function createNestedList(parentNode, children) {\r\n            if (children.length === 0) return;\r\n\r\n            const nestedUl = document.createElement('ul');\r\n            children.forEach(child => {\r\n                const nestedLi = document.createElement('li');\r\n                const nestedA = document.createElement('a');\r\n                nestedA.textContent = child.title;\r\n                nestedA.href = `#${child.id}`;\r\n                nestedLi.appendChild(nestedA);\r\n                nestedUl.appendChild(nestedLi);\r\n\r\n                if (child.children.length > 0) {\r\n                    createNestedList(nestedLi, child.children);\r\n                }\r\n            });\r\n\r\n            parentNode.appendChild(nestedUl);\r\n        }\r\n\r\n        \/\/ Object to store list of h2 and h3 with their titles\r\n        const headings = [];\r\n\r\n           \/\/ Get all h2 and h3 elements\r\n        \/\/ Get all h2 and h3 elements\r\n\t\tconst elements = document.querySelectorAll('.td-post-content h2');\r\n\r\n\t\telements.forEach(element => {\r\n\t\t\tif (element.tagName === 'H2') {\r\n\t\t\t\tconst id = formatId(); \/\/ Generate new ID\r\n\t\t\t\telement.id = id; \/\/ Set ID to h2 element\r\n\t\t\t\tif (element.textContent.toLowerCase() === \"key takeaways\") {return;} \/\/ Hide Key Takeaways di ToC\r\n\t\t\t\theadings.push({ level: 'h2', id: id, title: element.textContent, children: [] });\r\n\t\t\t} else if (element.tagName === 'H3') {\r\n\t\t\t\tconst id = formatId(); \/\/ Generate new ID\r\n\t\t\t\telement.id = id; \/\/ Set ID to h3 element\r\n\t\t\t\tif (headings.length > 0) {\r\n\t\t\t\t\theadings[headings.length - 1].children.push({ level: 'h3', id: id, title: element.textContent, children: [] });\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n       \/\/ Create HTML list from headings object\r\n\t\tconst ul = document.getElementById('list_toc');\r\n\t\tlet currentUl = ul;\r\n\t\theadings.forEach(heading => {\r\n\t\t\tconst li = document.createElement('li');\r\n\t\t\tconst a = document.createElement('a');\r\n\t\t\ta.textContent = heading.title;\r\n\t\t\ta.href = `#${heading.id}`; \/\/ Use the newly generated ID\r\n\t\t\tli.appendChild(a);\r\n\r\n\t\t\tif (heading.level === 'h2') {\r\n\t\t\t\tcurrentUl = li;\r\n\t\t\t\tul.appendChild(li);\r\n\t\t\t} else if (heading.level === 'h3') {\r\n\t\t\t\tif (!currentUl.lastElementChild || currentUl.lastElementChild.tagName !== 'UL') {\r\n\t\t\t\t\tconst nestedUl = document.createElement('ul');\r\n\t\t\t\t\tcurrentUl.appendChild(nestedUl);\r\n\t\t\t\t\tcurrentUl = nestedUl;\r\n\t\t\t\t}\r\n\t\t\t\tcurrentUl.appendChild(li);\r\n\t\t\t}\r\n\r\n\t\t\tcreateNestedList(li, heading.children);\r\n\t\t});\r\n\t\t\/\/ Get ul element with id 'list_toc'\r\n\t\tconst ulFloat = document.getElementById('list_toc');\r\n\r\n\t\t\/\/ Get content (child elements) from ul with id 'list_toc'\r\n\t\tconst clonedChildren = ulFloat.cloneNode(true).children;\r\n\r\n\t\t\/\/ Get ul element with id 'list_toc_float'\r\n\t\tconst ulToc = document.getElementById('list_toc_float');\r\n\r\n\t\t\/\/ Add content obtained from 'list_toc' to ul with id 'list_toc_float'\r\n\t\tulToc.append(...clonedChildren);\r\n\r\n\r\n        \/\/ Function to get navbar height\r\n\t\tfunction getNavbarHeight() {\r\n\t\t\tconst navbar = document.getElementById('tdi_34');\r\n\t\t\treturn navbar ? navbar.offsetHeight : 0;\r\n\t\t}\r\n\r\n\t\t\/\/ Function to add scroll position offset\r\n\t\tfunction scrollToElementWithOffset(elementId) {\r\n\t\t\tconst element = document.getElementById(elementId);\r\n\t\t\tif (element) {\r\n\t\t\t\tconst offset = getNavbarHeight();\r\n\t\t\t\tconst elementPosition = element.getBoundingClientRect().top;\r\n\t\t\t\tconst offsetPosition = elementPosition - offset - 40;\r\n\r\n\t\t\t\twindow.scrollBy({\r\n\t\t\t\t\ttop: offsetPosition,\r\n\t\t\t\t\tbehavior: 'smooth'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\/\/ Function to handle title link click\r\n\t\tfunction handleTitleClick(event) {\r\n\t\t\tevent.preventDefault();\r\n\t\t\tconst href = event.target.getAttribute('href').substr(1);\r\n\t\t\tscrollToElementWithOffset(href);\r\n\t\t}\r\n\r\n\t\t\/\/ Add event listener for all title links\r\n\t\tconst titleLinks = document.querySelectorAll('a[href^=\"#\"]');\r\n\t\ttitleLinks.forEach(link => {\r\n\t\t\tlink.addEventListener('click', handleTitleClick);\r\n\t\t});\r\n\t});\r\n    <\/script> -->\r\n<\/span><\/p>\n<h2><strong>What is Inventory Shrinkage?<\/strong><\/h2>\n<p><img decoding=\"async\" class=\"wp-image-22078 size-full aligncenter\" src=\"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/what-is-inventory-shrinkage.webp\" alt=\"what is inventory shrinkage\" width=\"1200\" height=\"650\" srcset=\"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/what-is-inventory-shrinkage.webp 1200w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/what-is-inventory-shrinkage-300x163.webp 300w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/what-is-inventory-shrinkage-1024x555.webp 1024w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/what-is-inventory-shrinkage-768x416.webp 768w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/what-is-inventory-shrinkage-775x420.webp 775w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/what-is-inventory-shrinkage-150x81.webp 150w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/what-is-inventory-shrinkage-696x377.webp 696w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/what-is-inventory-shrinkage-1068x580.webp 1068w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p>Inventory shrinkage refers to the difference between the recorded stock and the actual physical inventory that a business possesses. It is a common problem across industries, particularly in retail, and can occur due to various reasons such as theft, mismanagement, and administrative errors.<\/p>\n<p>Even a small amount of shrinkage can have a significant impact on profitability and overall operations. Shrinkage is calculated by comparing the expected inventory levels with the actual stock on hand, typically during an audit or physical inventory count.<\/p>\n<p>This discrepancy can result from internal factors, such as employee theft or administrative errors, or external ones, like shoplifting.<span id=\"what\"> Left unchecked, shrinkage not only eats into profits but also distorts data used for decision-making, making it harder to manage stock effectively.<\/span><\/p>\n<h2><b><span id=\"a\">Inventory Shrinkage vs Inventory Loss<\/span><\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Many businesses treat inventory shrinkage and inventory loss as the same thing, even though both have different meanings. Inventory shrinkage happens when stock goes missing without a clear explanation. This usually occurs because of theft, recording mistakes, vendor fraud, or untracked damage.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Meanwhile, inventory loss has a broader meaning. It includes any stock reduction that the business can identify, explain, and record properly, such as expired products, damaged goods, or obsolete inventory. In other words, shrinkage is part of inventory loss, but not all inventory loss counts as shrinkage.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This difference matters because each issue needs a different solution. Inventory shrinkage often points to weak stock control, limited visibility, or poor monitoring across warehouse and store operations. On the other hand, inventory loss usually calls for better storage, handling, and inventory planning.<\/span><\/p>\n<h2><strong>What is the Impact of Inventory Shrinkage?<\/strong><\/h2>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-33251\" src=\"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/What-is-the-Impact-of-Inventory-Shrinkage.webp\" alt=\"Impact of inventory shrinkage\" width=\"800\" height=\"400\" srcset=\"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/What-is-the-Impact-of-Inventory-Shrinkage.webp 800w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/What-is-the-Impact-of-Inventory-Shrinkage-300x150.webp 300w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/What-is-the-Impact-of-Inventory-Shrinkage-768x384.webp 768w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/What-is-the-Impact-of-Inventory-Shrinkage-150x75.webp 150w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/What-is-the-Impact-of-Inventory-Shrinkage-696x348.webp 696w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Inventory shrinkage directly reduces profit because the business pays for goods it can no longer sell. In retail, every missing item creates a loss without generating any revenue, which puts immediate pressure on margins and overall financial performance.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For example, if a retail store in Metro Manila loses \u20b150,000 worth of inventory, the business must absorb that loss and spend more money to replace the missing stock. As a result, some companies may raise prices to recover the cost, which can place extra pressure on customers.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Shrinkage also disrupts operations and damages customer trust. <a href=\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-report\/\">Inaccurate inventory data<\/a> can trigger stockouts, overstocking, and delivery delays, all of which hurt the customer experience. For supermarkets, electronics stores, and similar businesses, repeated shrinkage can weaken loyalty and force the company to spend more on security and inventory systems.<\/span><\/p>\n<h2><strong>What are the Causes of Inventory Shrinkage?<\/strong><\/h2>\n<p>Understanding the causes of inventory shrinkage is crucial for any business looking to safeguard its assets and maintain profitability. Below is a breakdown of the main reasons inventory can disappear unaccounted for:<\/p>\n<ol>\n<li><strong>Theft<\/strong>: This is often the most direct cause of inventory shrinkage. Theft can be internal, involving employees who have access to the stock, or external, such as shoplifting by customers, particularly prevalent in high-traffic environments like malls and supermarkets.<\/li>\n<li><strong>Administrative Errors<\/strong>: Mistakes in paperwork or data entry can lead to discrepancies in inventory records. This is common in systems where inventory tracking is done manually and is susceptible to human error.<\/li>\n<li><strong>Vendor Fraud<\/strong>: Sometimes, suppliers may deliver fewer items than billed, leading to inventory shortages that are not immediately apparent until an audit is conducted.<\/li>\n<li><strong>Damage<\/strong>: Improper storage or handling can damage goods, making them unsaleable. This is especially critical for perishable goods in sectors like food and pharmaceuticals, where environmental conditions need to be strictly controlled.<\/li>\n<\/ol>\n<p>Addressing these issues involves tightening internal controls, improving security measures, enhancing inventory tracking systems, and conducting regular audits. Such proactive steps can significantly reduce the risk of shrinkage, ensuring the business remains efficient and profitable.<\/p>\n<h2><strong><span id=\"b\">How to Prevent Inventory Shrinkage<\/span><\/strong><\/h2>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-33253\" src=\"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/How-to-Prevent-Inventory-Shrinkage.webp\" alt=\"Preventing shrinkage\" width=\"800\" height=\"400\" srcset=\"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/How-to-Prevent-Inventory-Shrinkage.webp 800w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/How-to-Prevent-Inventory-Shrinkage-300x150.webp 300w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/How-to-Prevent-Inventory-Shrinkage-768x384.webp 768w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/How-to-Prevent-Inventory-Shrinkage-150x75.webp 150w, https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/How-to-Prevent-Inventory-Shrinkage-696x348.webp 696w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/p>\n<p>To effectively combat inventory shrinkage, several approaches are essential. This involves not only meticulous tracking and management of stock but also fostering an environment where security and accuracy are paramount. Try these steps to control shrinkage:<\/p>\n<ol>\n<li><strong>Regular Audits<\/strong>: Establish a routine of <a href=\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-audit\/\">conducting detailed inventory audits<\/a> either quarterly or monthly. During these audits, physically count the inventory and match it with what\u2019s recorded in your system to pinpoint where losses are happening.<\/li>\n<li><strong>Enhanced Security<\/strong>: Enhance the security of your storage and retail areas. Installing CCTV cameras and implementing controlled access systems are crucial steps to deter and detect both internal and external theft.<\/li>\n<li><strong>Barcode Systems<\/strong>: Adopt barcode and SKU systems to streamline inventory tracking. These technologies improve the accuracy and speed of stock management, helping businesses keep a closer eye on their inventory.<\/li>\n<li><strong>Staff Training<\/strong>: Educate your employees about the importance of inventory management and teach them to follow procedures that prevent shrinkage. This includes training on spotting suspicious activities and correctly handling merchandise.<\/li>\n<li><strong>Inventory Software<\/strong>: Use advanced inventory management software to get real-time tracking of stock, automated reporting, and <a href=\"https:\/\/www.hashmicro.com\/ph\/blog\/lean-inventory-management\/\">manage lean inventory<\/a>.<\/li>\n<\/ol>\n<p><span id=\"hash\">Adopting these strategies and implementing <a href=\"\/ph\/blog\/manufacturing-inventory-software\/\">another inventory software<\/a> creates a robust defense against inventory shrinkage, reinforcing operational efficiencies and supporting sustainable growth.<\/span><\/p>\n<style>\r\n    #custom-quote {\r\n        background-color: #f0f0f0;\r\n        padding: 20px;\r\n        border-radius: 12px;\r\n        margin: 20px;\r\n        display: flex;\r\n        flex-direction: column;\r\n    }\r\n\r\n    #custom-quote .quote-body {\r\n        display: flex;\r\n        flex-direction: row;\r\n        align-items: flex-start;\r\n        gap: 15px;\r\n        font-size: 16px;\r\n        line-height: 1.5;\r\n        font-style: italic;\r\n    }\r\n\r\n    #custom-quote .quote-icon {\r\n        width: 40px;\r\n        height: 40px;\r\n        flex-shrink: 0;\r\n    }\r\n\r\n    #custom-quote .quote-author-wrapper {\r\n        margin-top: 15px;\r\n        align-self: flex-start;\r\n        margin-left: 55px; \r\n\t\tmargin-bottom: 0px;\r\n    }\r\n\r\n    #custom-quote em {\r\n        font-family: 'Roboto Serif', serif !important;\r\n        font-size: 12px;\r\n        font-weight: bold;\r\n        font-style: normal;\r\n    }\r\n\r\n    @media screen and (max-width: 768px) {\r\n        #custom-quote {\r\n            margin: 15px 0;\r\n            padding: 15px;\r\n        }\r\n        \r\n        #custom-quote .quote-body {\r\n            gap: 12px;\r\n        }\r\n\r\n        #custom-quote .quote-author-wrapper {\r\n            margin-left: 52px;\r\n        }\r\n    }\r\n\r\n    @media screen and (max-width: 480px) {\r\n        #custom-quote {\r\n            margin: 10px 0;\r\n            padding: 12px;\r\n        }\r\n\r\n        #custom-quote .quote-body {\r\n            font-size: 14px;\r\n            gap: 10px;\r\n        }\r\n\r\n        #custom-quote .quote-icon {\r\n            width: 32px;\r\n            height: 32px;\r\n        }\r\n\r\n        #custom-quote .quote-author-wrapper {\r\n            margin-top: 10px;\r\n            margin-left: 42px;\r\n        }\r\n    }\r\n<\/style>\r\n\r\n<div id=\"custom-quote\">\r\n    <div class=\"quote-body\">\r\n        <img decoding=\"async\" src=\"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2025\/12\/quote.webp\" alt=\"Quote Icon\" class=\"quote-icon\">\r\n        <div>\r\n            To blame just theft is probably a little bit simplistic.        <\/div>\r\n    <\/div>\r\n    <p class=\"quote-author-wrapper\">\r\n        <em>Mark Ibbotson, Senior Adviser at McKinsey and former Walmart EVP<\/em>\r\n    <\/p>\r\n<\/div>\n<h2><b>How to Calculate Inventory Shrinkage<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">To calculate inventory shrinkage, you need to compare the stock quantity recorded in your system with the actual inventory counted during a physical stock check. This helps businesses identify how much inventory is missing due to theft, damage, administrative errors, or supplier discrepancies. Once you know the gap, you can measure how seriously shrinkage affects your operations and profits.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The basic inventory shrinkage formula is:<\/span><\/p>\n<p><b>Inventory Shrinkage = Recorded Inventory Value &#8211; Actual Physical Inventory Value<\/b><\/p>\n<p><span style=\"font-weight: 400;\">If you want to express it as a percentage, use this formula:<\/span><\/p>\n<p><b>Inventory Shrinkage Rate (%) = (Recorded Inventory &#8211; Actual Inventory) \/ Recorded Inventory x 100<\/b><\/p>\n<p><span style=\"font-weight: 400;\">For example, let\u2019s say a retail store in the Philippines has inventory records showing stock worth <\/span><b>\u20b1200,000<\/b><span style=\"font-weight: 400;\">, but after a physical count, the actual inventory on hand is only <\/span><b>\u20b1185,000<\/b><span style=\"font-weight: 400;\">. That means the business has <\/span><b>\u20b115,000<\/b><span style=\"font-weight: 400;\"> in missing stock. To find the shrinkage rate, divide <\/span><b>\u20b115,000 by \u20b1200,000<\/b><span style=\"font-weight: 400;\">, then multiply by <strong>100<\/strong>. The result is <\/span><b>7.5% inventory shrinkage<\/b><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This calculation gives businesses a clearer view of inventory losses and helps them spot recurring problems faster. If the shrinkage rate keeps increasing, it may point to weak internal controls, inaccurate stock recording, poor warehouse handling, or theft. By tracking this number regularly, businesses can make better decisions about audits, stock movement monitoring, employee accountability, and inventory system improvements.<\/span><\/p>\n<h2><b><span id=\"c\">Inventory Shrinkage Across Warehousing, Distribution, and Retail<\/span><\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Inventory shrinkage can occur at every stage of logistics operations, from warehousing and distribution to retail. Understanding how shrinkage happens in each of these components is crucial for identifying the root causes and applying the right prevention strategy.<\/span><\/p>\n<div class=\"overflow-x-auto w-full px-2 mb-6\">\n<table style=\"border-collapse: collapse; width: 100%; font-family: Arial, sans-serif;\">\n<tbody>\n<tr style=\"background-color: #990000; color: #ffffff;\">\n<td style=\"padding: 10px; border: 1px solid #dddddd; width: 33.33%; text-align: center;\"><strong>Retail<\/strong><\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; width: 33.33%; text-align: center;\"><strong>Warehousing<\/strong><\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; width: 33.33%; text-align: center;\"><strong>Distribution<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>Shrinkage often happens<\/strong>\u00a0on the selling floor.<\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>Shrinkage often happens<\/strong> behind the scenes.<\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>Shrinkage often occurs<\/strong> during stock movement.<\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>Common causes: <\/strong>shoplifting and cashier errors.<\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>Common causes: <\/strong>receiving and picking mistakes.<\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>Common causes: <\/strong>loading and delivery errors.<\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>High-risk businesses: <\/strong>supermarkets and electronics stores.<\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>High-risk businesses: <\/strong>large warehouses with manual processes.<\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>High-risk businesses: <\/strong>multi-branch and delivery-based businesses.<\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>Common issue: <\/strong>unscanned or unpaid items leaving the store.<\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>Common issue: <\/strong>full quantities recorded despite short deliveries.<\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>Common issue:<\/strong> missing stock during shipment handovers.<\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>The impact:<\/strong> lower profit and weaker customer trust.<\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>The impact: <\/strong>stock inaccuracies and replenishment issues.<\/td>\n<td style=\"padding: 10px; border: 1px solid #dddddd; text-align: left;\"><strong>The impact: <\/strong>poor visibility and delayed deliveries.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p><span style=\"font-weight: 400;\">Reducing shrinkage across retail, warehousing, and distribution takes more than stock checks. Businesses need tighter controls, faster stock recording, and better visibility. With barcode scanning, real-time updates, audit trails, and an integrated ERP inventory system, teams can track item movement accurately, detect discrepancies faster, and maintain stronger control over stock.<\/span><\/p>\n<h2><strong>Conclusion<\/strong><\/h2>\n<p>From internal theft to administrative errors and even vendor fraud, the causes of inventory loss are diverse, but the strategies to combat them are robust and effective. Regular audits, enhanced security measures, advanced tracking systems, and employee training are essential in safeguarding your stock.<\/p>\n<p>Inventory shrinkage can come from many factors, and handling all of them will require time, resources, and labor. To ease the process of filling the gaps to prevent inventory shrinkage, find <a href=\"https:\/\/www.hashmicro.com\/ph\/blog\/cloud-inventory-management-software-philippines\/\">advanced inventory management tools<\/a> that can help you track all the things that you need.<\/p>\n<h2><strong>FAQ for Inventory Shrinkage<\/strong><\/h2>\n<ul class=\"bottom_faq\">\n<li>\n<details>\n<summary><strong>How do you fix inventory shrinkage? <\/strong><\/summary>\n<p>To fix this, implement strict audits and enhance inventory tracking systems. Utilizing technology like inventory management software can also greatly reduce errors and theft.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>What is the biggest cause of inventory shrinkage? <\/strong><\/summary>\n<p>The biggest cause of inventory shrinkage is typically theft, including both internal theft by employees and external theft by shoplifters.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>How do you write off inventory shrinkage?<\/strong><\/summary>\n<p>Inventory shrinkage is written off by adjusting the inventory account in financial records to reflect the actual physical count, typically during the year-end closing process.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>How much shrinkage is acceptable?<\/strong><\/summary>\n<p>There is no single &#8220;acceptable&#8221; shrinkage rate. However, it is best practice to keep shrinkage as low as possible and monitor it consistently by store, warehouse, or product category. If your shrinkage keeps rising, or if it starts hurting margins, stock accuracy, and customer fulfillment, it is already too high.<\/p>\n<\/details>\n<\/li>\n<\/ul>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [{\n    \"@type\": \"Question\",\n    \"name\": \"How do you fix inventory shrinkage?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"To fix this, implement strict audits and enhance inventory tracking systems. Utilizing technology like inventory management software can also greatly reduce errors and theft.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"What is the biggest cause of inventory shrinkage?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"The biggest cause of inventory shrinkage is typically theft, including both internal theft by employees and external theft by shoplifters.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"How do you write off inventory shrinkage?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Inventory shrinkage is written off by adjusting the inventory account in financial records to reflect the actual physical count, typically during the year-end closing process.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"How much shrinkage is acceptable?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"There is no single \\\"acceptable\\\" shrinkage rate. However, it is best practice to keep shrinkage as low as possible and monitor it consistently by store, warehouse, or product category. If your shrinkage keeps rising, or if it starts hurting margins, stock accuracy, and customer fulfillment, it is already too high.\"\n    }\n  }]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Inventory shrinkage is a challenge many companies face, whether due to theft, damage, or simple record-keeping errors. Left unaddressed, these issues can significantly impact profitability and daily operations. In today\u2019s competitive market, understanding how shrinkage happens (and how to stop it) can give your business a real advantage. In this article, we\u2019ll explore the causes, [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":22079,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[20],"tags":[],"class_list":{"0":"post-7754","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-inventory"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.6 (Yoast SEO v26.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What is Inventory Shrinkage? Definition and Ways to Avoid<\/title>\n<meta name=\"description\" content=\"Explore inventory strategies to reduce shrinkage and protect profitability in the Philippines. Read the full article to learn more.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is Inventory Shrinkage? Definition and Ways to Avoid\" \/>\n<meta property=\"og:description\" content=\"Explore inventory strategies to reduce shrinkage and protect profitability in the Philippines. Read the full article to learn more.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/\" \/>\n<meta property=\"og:site_name\" content=\"HashMicro Philippine Blog\" \/>\n<meta property=\"article:published_time\" content=\"2024-09-13T04:26:42+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-11T09:25:07+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/inventory-shrinkage.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"650\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Victo Glend\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Victo Glend\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/\",\"url\":\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/\",\"name\":\"What is Inventory Shrinkage? Definition and Ways to Avoid\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/ph\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/inventory-shrinkage.webp\",\"datePublished\":\"2024-09-13T04:26:42+00:00\",\"dateModified\":\"2026-03-11T09:25:07+00:00\",\"author\":{\"@id\":\"https:\/\/www.hashmicro.com\/ph\/blog\/#\/schema\/person\/c51b93967a008cb14e6ae3a116c1ea25\"},\"description\":\"Explore inventory strategies to reduce shrinkage and protect profitability in the Philippines. Read the full article to learn more.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/#breadcrumb\"},\"inLanguage\":\"en-PH\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-PH\",\"@id\":\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/inventory-shrinkage.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/inventory-shrinkage.webp\",\"width\":1200,\"height\":650,\"caption\":\"inventory shrinkage\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/ph\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What is Inventory Shrinkage? Definition and Ways to Avoid\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.hashmicro.com\/ph\/blog\/#website\",\"url\":\"https:\/\/www.hashmicro.com\/ph\/blog\/\",\"name\":\"HashMicro Philippine Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.hashmicro.com\/ph\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-PH\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.hashmicro.com\/ph\/blog\/#\/schema\/person\/c51b93967a008cb14e6ae3a116c1ea25\",\"name\":\"Victo Glend\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-PH\",\"@id\":\"https:\/\/www.hashmicro.com\/ph\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/43770bec05cbcf2f378f590b5d00de05b91998ddb9ef520e856f3dfd761a2487?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/43770bec05cbcf2f378f590b5d00de05b91998ddb9ef520e856f3dfd761a2487?s=96&d=mm&r=g\",\"caption\":\"Victo Glend\"},\"url\":\"https:\/\/www.hashmicro.com\/ph\/blog\/author\/victoglend\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What is Inventory Shrinkage? Definition and Ways to Avoid","description":"Explore inventory strategies to reduce shrinkage and protect profitability in the Philippines. Read the full article to learn more.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/","og_locale":"en_US","og_type":"article","og_title":"What is Inventory Shrinkage? Definition and Ways to Avoid","og_description":"Explore inventory strategies to reduce shrinkage and protect profitability in the Philippines. Read the full article to learn more.","og_url":"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/","og_site_name":"HashMicro Philippine Blog","article_published_time":"2024-09-13T04:26:42+00:00","article_modified_time":"2026-03-11T09:25:07+00:00","og_image":[{"width":1200,"height":650,"url":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/inventory-shrinkage.webp","type":"image\/webp"}],"author":"Victo Glend","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Victo Glend","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/","url":"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/","name":"What is Inventory Shrinkage? Definition and Ways to Avoid","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/ph\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/inventory-shrinkage.webp","datePublished":"2024-09-13T04:26:42+00:00","dateModified":"2026-03-11T09:25:07+00:00","author":{"@id":"https:\/\/www.hashmicro.com\/ph\/blog\/#\/schema\/person\/c51b93967a008cb14e6ae3a116c1ea25"},"description":"Explore inventory strategies to reduce shrinkage and protect profitability in the Philippines. Read the full article to learn more.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/#breadcrumb"},"inLanguage":"en-PH","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/"]}]},{"@type":"ImageObject","inLanguage":"en-PH","@id":"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/#primaryimage","url":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/inventory-shrinkage.webp","contentUrl":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-content\/uploads\/2024\/09\/inventory-shrinkage.webp","width":1200,"height":650,"caption":"inventory shrinkage"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/ph\/blog\/inventory-shrinkage\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/ph\/blog\/"},{"@type":"ListItem","position":2,"name":"What is Inventory Shrinkage? Definition and Ways to Avoid"}]},{"@type":"WebSite","@id":"https:\/\/www.hashmicro.com\/ph\/blog\/#website","url":"https:\/\/www.hashmicro.com\/ph\/blog\/","name":"HashMicro Philippine Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hashmicro.com\/ph\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-PH"},{"@type":"Person","@id":"https:\/\/www.hashmicro.com\/ph\/blog\/#\/schema\/person\/c51b93967a008cb14e6ae3a116c1ea25","name":"Victo Glend","image":{"@type":"ImageObject","inLanguage":"en-PH","@id":"https:\/\/www.hashmicro.com\/ph\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/43770bec05cbcf2f378f590b5d00de05b91998ddb9ef520e856f3dfd761a2487?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/43770bec05cbcf2f378f590b5d00de05b91998ddb9ef520e856f3dfd761a2487?s=96&d=mm&r=g","caption":"Victo Glend"},"url":"https:\/\/www.hashmicro.com\/ph\/blog\/author\/victoglend\/"}]}},"order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-json\/wp\/v2\/posts\/7754","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-json\/wp\/v2\/comments?post=7754"}],"version-history":[{"count":26,"href":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-json\/wp\/v2\/posts\/7754\/revisions"}],"predecessor-version":[{"id":33256,"href":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-json\/wp\/v2\/posts\/7754\/revisions\/33256"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-json\/wp\/v2\/media\/22079"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-json\/wp\/v2\/media?parent=7754"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-json\/wp\/v2\/categories?post=7754"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/ph\/blog\/wp-json\/wp\/v2\/tags?post=7754"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}