{"id":9624,"date":"2024-02-20T04:25:09","date_gmt":"2024-02-20T04:25:09","guid":{"rendered":"https:\/\/www.hashmicro.com\/blog\/?p=9624"},"modified":"2025-12-29T09:17:50","modified_gmt":"2025-12-29T09:17:50","slug":"calculate-retained-earnings","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/","title":{"rendered":"What Are Retained Earnings? Definition and Calculation Guide"},"content":{"rendered":"\r\n<p><span style=\"font-weight: 400;\">Retained earnings are the portion of a company\u2019s net income that remains after dividends are paid to shareholders. These funds serve as a crucial indicator of a business\u2019s ability to reinvest in its operations, support expansion, or reserve resources for unforeseen challenges.<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">Around <\/span><a href=\"https:\/\/www.businessdasher.com\/small-business-accounting-statistics\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">29% of companies<\/span><\/a><span style=\"font-weight: 400;\"> now use automated accounts payable systems to improve accuracy, reduce manual effort, and simplify financial calculations like retained earnings by ensuring precise and efficient data management.<\/span><\/p>\r\n<p><a href=\"https:\/\/www.hashmicro.com\/accounting\"><span style=\"font-weight: 400;\">HashMicro Accounting Software<\/span><\/a><span style=\"font-weight: 400;\"> provides a comprehensive solution for businesses aiming to optimize their retained earnings. This software ensures accuracy and efficiency in managing finances by automating key processes such as profit tracking and financial reporting.<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">In this article, we will explore the concept of retained earnings in greater depth, discuss their critical role in business operations, and highlight how HashMicro Accounting Software can be a transformative tool in optimizing financial strategies.<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\"><a href=\"https:\/\/www.hashmicro.com\/free-product-tour\/?medium=free-product-tour\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" width=\"712\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/11\/Free-Product-Tour-resized.webp\" alt=\"Free Demo\"><\/a> <!-- <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 Content:\r\n\t<\/p>\r\n\t<ul id=\"list_toc\" class='list_toc'><\/ul>\r\n<\/div> -->\r\n\r\n<!-- <div class=\"dropdown-fixed-top\" id=\"dropdown-fixed-top\">\r\n\t<div class=\"row\">\r\n\t\t<p id=\"pilihDaftarIsi\">Table of Content<\/p>\r\n\t\t<p><i class=\"td-icon-menu-down\"><\/i><\/p>\r\n\t<\/div>\r\n\t\r\n\t<div>\r\n\t\t<ul id=\"list_toc_top\" class='list_toc'><\/ul>\r\n\t<\/div>\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\">Table of Content<\/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\t@media (max-width: 992px) {\r\n\t\t#toc_group_article {\r\n\t\t\tpadding-top: 24px;\r\n\t\t}\r\n\t}\r\n\t\r\n\t#list_toc_float {\r\n\t\tmax-height: calc(100vh - 250px);\r\n\t\toverflow-y: auto;\r\n\t}\r\n\t\r\n\t#list_toc_top {\r\n\t\tdisplay: none;\r\n\t\tbackground: #fff;\r\n\t\tmargin-bottom: 4px;\r\n\t}\r\n\t\r\n\t#list_toc_top li {\r\n\t\tdisplay: block;\r\n\t\tmargin-left: 0;\r\n\t\tlist-style: none;\r\n\t}\r\n\t\r\n\t#list_toc_top a {\r\n\t\tpadding: 5px;\r\n\t\tdisplay: block;\r\n\t}\r\n\t\r\n\t#list_toc_top.show {\r\n\t\tdisplay: block;\r\n\t}\r\n\r\n\t#list_toc_top a {\r\n\t\tcolor: #434343;\r\n\t\tborder-bottom: 1px solid #bbb;\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top {\r\n\t\tposition: fixed;\r\n\t\ttop: 59px;\r\n\t\twidth: 100%;\r\n\t\tz-index: 99;\r\n\t\tborder-bottom: 2px solid #9c171e;\r\n\t\tpadding: 12px;\r\n\t\tbackground: #fff;\r\n\t\twidth: 100%;\r\n\t\tcursor: pointer;\r\n\t\tdisplay: none;\r\n\t\tleft: 0;\r\n\t\tbox-shadow: 0 -2px 7px 6px rgba(0, 0, 0, 0.17);\r\n\t}\r\n\t\r\n\t#dropdown-fixed-top.show {\r\n\t\tanimation: showAnim 0.5s ease;\r\n\t\tdisplay: block;\r\n\t\topacity: 1;\r\n\t}\r\n\t\r\n\t@keyframes showAnim {\r\n\t\tfrom {\r\n\t\t\tdisplay: none;\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\tto {\r\n\t\t\tdisplay: block;\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top #list_toc_top {\r\n\t\tmax-height: calc(50vh - 110px);\r\n\t\toverflow-y: scroll;\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top .row {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: space-between\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top .row p {\r\n\t\tmargin-bottom: 0;\r\n\t}\r\n\t\r\n\t#pilihDaftarIsi {\r\n\t\tmax-width: 100%;\r\n\t\toverflow: hidden;\r\n\t\twhite-space: nowrap;\r\n\t}\r\n\t\r\n\t@media (min-width: 1018px) {\r\n\t\t.dropdown-fixed-top {\r\n\t\t\tdisplay: none;\r\n\t\t}\r\n\t}\r\n\t\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_top 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: 6px;\r\n\t\tpadding-top: 2px;\r\n\t\tpadding-bottom: 2px;\r\n\t\ttransition: all 0.2s ease-in-out;\r\n\t\tfont-size: 15px;\r\n\t\tline-height: 18px;\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#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\r\n<\/style>\r\n\r\n<!-- ToC styling  -->\r\n<style>\r\n\t\/* 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 0px 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}\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: 90% !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\t\r\n\t<\/style>\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 the ID 'article-left'\r\n  const article = document.querySelector('.td-post-content');\r\n\r\n  \/\/ Find all h2 elements within 'myarticle'\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'); \/\/ Assuming header-faq is the element for 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.scrollY >= (headerTop - headerHeight + 700)) {\r\n\t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\/\/ \t\t\tconsole.log(\"current header text:\", currentHeaderText);\r\n\t\t\ttocTitle.textContent = currentHeaderText;\r\n\t\t\tcurrentHeader = currentHeaderId;\r\n\t\t\t\r\n\t\t\tif(window.innerWidth < 767){\r\n\t\t\t\ttocTitle.textContent = 'Table of Content';\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\/\/     if (windowTop < triggerFooterPoint) {\r\n\/\/         toc.style.display = 'block';\r\n\/\/ \t}else{\r\n\/\/         toc.style.display = 'none';\r\n\/\/ \t}\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  const tocs = document.querySelector('#toc.sticky');\r\n\t\t\t  tocTitle.textContent = 'Table of Content'; \/\/ 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\/\/         console.log(\"activeLink:\", activeLink);\r\n        if (activeLink) {\r\n\/\/           tocTitle.textContent = activeLink.textContent; \/\/ Update TOC title\r\n          tocTitle.textContent = activeLink ? activeLink.textContent : \"\"; \/\/ Update title only if activeLink exists\r\n        }\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 Content'; \/\/ 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\ttoc.style.paddingBottom = '6px'; \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\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\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 Content'; \/\/ 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\r\n\r\n\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\/\/ \/\/ \t\t\tconsole.log(\"prevent default\");\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<!-- START script lama -->\r\n<!-- <script>\r\n\/\/ \tvar pilihDaftarIsi = document.getElementById('pilihDaftarIsi');\r\n\t\r\n\/\/ \tdocument.addEventListener('DOMContentLoaded', function() {\r\n\/\/ \t\tvar dropdownFixedTop = document.querySelector('.dropdown-fixed-top');\r\n\r\n\/\/ \t\tdropdownFixedTop.addEventListener('click', function() {\r\n\/\/ \t\t\tvar dropdownContent = this.querySelector('.list_toc');\r\n\/\/ \t\t\tdropdownContent.classList.toggle('show');\r\n\/\/ \t\t});\r\n\r\n\/\/ \t\twindow.addEventListener('click', function(event) {\r\n\/\/ \t\t\tvar listTocTop = document.getElementById('list_toc_top');\r\n\r\n\/\/ \t\t\tif (!dropdownFixedTop.contains(event.target)) {\r\n\/\/ \t\t\t\tlistTocTop.classList.remove('show');\r\n\/\/ \t\t\t}\r\n\/\/ \t\t});\r\n\/\/ \t});\r\n\t\r\n\/\/ \tvar daftarIsiContainer = document.getElementById('toc_group_article');\r\n\/\/ \tvar dropdownFixedTop = document.getElementById('dropdown-fixed-top');\r\n\/\/     var triggered = false; \/\/ Flag to keep track of whether the function has been triggered\r\n\r\n\/\/     window.addEventListener('scroll', function() {\r\n\/\/         if (!triggered && isCompletelyScrolledPast(daftarIsiContainer)) {\r\n\/\/             showSectionDropdownFixedTop(false);\r\n\/\/             triggered = true;\r\n\/\/         } else if (triggered && !isCompletelyScrolledPast(daftarIsiContainer)) {\r\n\/\/             showSectionDropdownFixedTop(true);\r\n\/\/             triggered = false;\r\n\/\/         }\r\n\/\/     });\r\n\r\n\/\/     function isCompletelyScrolledPast(element) {\r\n\/\/         var elementTop = element.getBoundingClientRect().top;\r\n\/\/         var elementBottom = element.getBoundingClientRect().bottom;\r\n\/\/         return elementTop < 0 && elementBottom < 0;\r\n\/\/     }\r\n\r\n\/\/     function showSectionDropdownFixedTop(show) {\r\n\/\/ \t\tif (show) {\r\n\/\/ \t\t\tdropdownFixedTop.classList.remove(\"show\");\r\n\/\/ \t\t} else {\r\n\/\/ \t\t\tdropdownFixedTop.classList.add(\"show\");\r\n\/\/ \t\t}\r\n\/\/     }\r\n<\/script> -->\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\t\t  pilihDaftarIsi.innerHTML = a.textContent;\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', 'list_toc_top']; \/\/ 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<!-- END script lama -->\r\n\t\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\nToC List for desktop side bar, diganti jadi inject by php, di code snippet \"Sidebar Accordion\"\r\n        Fungsi untuk mengubah teks menjadi format id\r\n        function formatId(text) {\r\n            return text.trim().replace(\/[^\\w\\d]+\/g, '_');\r\n        }\r\n\r\n        \/\/ Fungsi untuk membuat 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        \/\/ Membuat objek untuk menyimpan daftar h2 dan h3 beserta judulnya\r\n        const headings = [];\r\n\r\n           \/\/ Mengambil semua elemen h2 dan h3\r\n        const elements = document.querySelectorAll('.td-post-content h2');\r\n\t\t\t\/\/, .td-post-content h3\r\n\r\n        elements.forEach(element => {\r\n            if (element.tagName === 'H2') {\r\n                const id = formatId(element.textContent);\r\n                element.id = id;\r\n\t\t\t\tif (element.textContent.toLowerCase() === \"key takeaways\") {return;} \/\/ Kalau Key Takeaways, jangan dimasukin\r\n                headings.push({ level: 'h2', id: id, title: element.textContent, children: [] });\r\n            } else if (element.tagName === 'H3') {\r\n                const id = formatId(element.textContent);\r\n                element.id = id;\r\n                if (headings.length > 0) {\r\n                    headings[headings.length - 1].children.push({ level: 'h3', id: id, title: element.textContent, children: [] });\r\n                }\r\n            }\r\n        });\r\n\r\n        \/\/ Membuat list HTML dari objek headings\r\n        const ul = document.getElementById('list_toc');\r\n        let currentUl = ul;\r\n        headings.forEach(heading => {\r\n            const li = document.createElement('li');\r\n            const a = document.createElement('a');\r\n            a.textContent = heading.title;\r\n            a.href = `#${heading.id}`;\r\n            li.appendChild(a);\r\n\r\n            if (heading.level === 'h2') {\r\n                \/\/ Menyimpan ul saat ini untuk menambahkan nested ul\r\n                currentUl = li;\r\n                ul.appendChild(li);\r\n            } else if (heading.level === 'h3') {\r\n                if (!currentUl.lastElementChild || currentUl.lastElementChild.tagName !== 'UL') {\r\n                    \/\/ Jika belum ada nested ul, buat satu\r\n                    const nestedUl = document.createElement('ul');\r\n                    currentUl.appendChild(nestedUl);\r\n                    currentUl = nestedUl;\r\n                }\r\n                currentUl.appendChild(li);\r\n            }\r\n\r\n            createNestedList(li, heading.children);\r\n        });\r\n\t\tDapatkan elemen ul dengan id 'list_toc_float'\r\nconst ulFloat = document.getElementById('list_toc');\r\nconst ulJourney = document.getElementById('list_journey');\r\n\r\nDapatkan isi (child elements) dari ul dengan id 'list_toc_float'\r\n\tif (ulFloat !== null) {\r\n\t\tconst clonedChildren = ulFloat.cloneNode(true).children;\r\n\t\tconst ulToc = document.getElementById('list_toc_float');\r\n\t\tconst ulTocTop = document.getElementById('list_toc_top');\r\n\t\tif ((ulToc !== null || ulToc !== undefined) && window.innerWidth > 1018){\r\n\t\t\tulToc.append(...clonedChildren);\r\n\t\t} else {\r\n\t\t\tulTocTop.append(...clonedChildren);\r\n\t\t}\r\n\t} \r\n\r\n\tif (ulJourney !== null) {\r\n\t\tconst clonedChildrenJourney = ulJourney.cloneNode(true).children;\r\n\t\tconst ulTocJourney = document.getElementById('list_toc_journey');\r\n\t\tulTocJourney.append(...clonedChildrenJourney);\r\n\t} \r\n\t\r\n        Fungsi untuk mengambil tinggi navbar\r\n        function getNavbarHeight() {\r\n            const navbar = document.getElementById('tdi_34');\r\n            return navbar ? navbar.offsetHeight : 0;\r\n        }\r\n\r\n        \/\/ Fungsi untuk menambahkan offset posisi scroll\r\n        function scrollToElementWithOffset(elementId) {\r\n            const element = document.getElementById(elementId);\r\n            if (element) {\r\n                const offset = getNavbarHeight();\r\n                const elementPosition = element.getBoundingClientRect().top;\r\n                const offsetPosition = elementPosition - offset-40;\r\n\r\n                window.scrollBy({\r\n                    top: offsetPosition,\r\n                    behavior: 'smooth'\r\n                });\r\n            }\r\n        }\r\n\r\n        \/\/ Fungsi untuk menangani klik pada tautan judul\r\n        function handleTitleClick(event) {\r\n            event.preventDefault();\r\n            const href = event.target.getAttribute('href').substr(1);\r\n            scrollToElementWithOffset(href);\r\n        }\r\n\r\n        \/\/ Tambahkan event listener untuk semua tautan judul\r\n        const titleLinks = document.querySelectorAll('a[href^=\"#\"]');\r\n        titleLinks.forEach(link => {\r\n            link.addEventListener('click', handleTitleClick);\r\n        });\r\n\t});\r\n    <\/script> -->\r\n<\/span><\/p>\r\n<table style=\"border-collapse: collapse; background-color: #fffacd; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); border-radius: 25px 25px 25px 25px;\" width=\"100%\">\r\n<tbody>\r\n<tr>\r\n<td style=\"padding: 15px; border: none;\">\r\n<h3 style=\"margin-bottom: 10px;\"><span style=\"background-color: #990000; color: #ffffff; padding: 5px;\"><b>Key Takeaways<\/b><\/span><\/h3>\r\n<ul>\r\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"#what\">Retained earnings are<\/a> a company\u2019s accumulated profits kept for reinvestment, debt repayment, or financial reserves, playing a critical role in sustaining long-term growth.<\/li>\r\n<li aria-level=\"1\"><a href=\"#function\">Proper management of retained earnings<\/a> ensures operational stability, supports business expansion, and prepares the company for unexpected financial challenges.<\/li>\r\n<li aria-level=\"1\"><a href=\"https:\/\/www.hashmicro.com\/accounting\">HashMicro Accounting Software<\/a> simplifies the management of retained earnings with automated reporting, real-time analytics, and seamless integration, empowering businesses to optimize their financial strategies effectively.<\/li>\r\n<\/ul>\r\n<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n\r\n\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\"><b>What Is Retained Earnings?<\/b><\/h2>\r\n<p><span style=\"font-weight: 400;\">Retained earnings are the portion of a company\u2019s net income kept after paying dividends to shareholders. They are calculated by adding net income to the previous retained earnings balance and subtracting any dividends paid.<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">The calculation of retained earnings is straightforward. It begins with the previous period&#8217;s retained earnings balance, adds the net income earned during the current period, and subtracts any dividends paid out.\u00a0<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">The resulting figure represents the amount of profit retained by the business to support its financial activities. For example, if a company generates $100,000 in net income and distributes $30,000 as dividends, the remaining $70,000 becomes its retained earnings for that period.<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">Retained earnings play a critical role in ensuring a company\u2019s sustainability and growth. Businesses often rely on these funds to invest in new projects, purchase assets, or address unexpected challenges without relying on external financing.\u00a0<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">Effective management of retained earnings reflects a company\u2019s ability to balance shareholder expectations while maintaining the resources necessary for long-term success.<\/span><\/p>\r\n<h2><b>What are Retained Earnings Used for?<\/b><\/h2>\r\n<p><span style=\"font-weight: 400;\">Retained earnings play a critical role in a business&#8217;s financial strategy. Understanding how retained earnings are used can help businesses allocate their financial resources more effectively.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">1. Reinvestment in business operations<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Retained earnings are commonly used to fund growth initiatives such as expanding production capacity, upgrading technology, or launching new products. This reinvestment helps businesses enhance their competitiveness and drive long-term profitability.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">2. Debt repayment<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Companies often allocate retained earnings to pay off debts or settle other financial obligations. Reducing liabilities strengthens financial stability, improves creditworthiness, and minimizes reliance on external financing.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">3. Creating financial reserves<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">A portion of retained earnings is set aside as reserves to handle unexpected expenses or economic downturns. This ensures the business can maintain operations and financial health during challenging periods.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">4. Funding strategic projects<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Retained earnings can support strategic initiatives, such as entering new markets or acquiring other businesses. These efforts help companies grow and diversify their revenue streams.<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">By effectively allocating retained earnings, businesses can sustain operations, seize growth opportunities, and prepare for future uncertainties.<\/span><\/p>\r\n<h2><b>What Is the Difference Between Retained Earnings and Dividends?<\/b><\/h2>\r\n<p><span style=\"font-weight: 400;\">Understanding the distinction between retained earnings and dividends is essential for grasping how companies manage their profits. While both are directly linked to a company\u2019s net income, they serve different purposes in financial planning and resource allocation.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">1. Purpose<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Retained earnings represent the portion of net income that a company keeps to reinvest in its operations, repay debts, or save for future needs. In contrast, dividends are the portion of profits distributed to shareholders as a reward for their investment in the company.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">2. Impact on financial statements<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Retained earnings are reported under the equity section of the balance sheet and accumulate over time, reflecting the company\u2019s financial health and growth potential. Dividends, on the other hand, appear as deductions from retained earnings when they are declared, reducing the amount available for reinvestment.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">3. Company control vs. shareholder benefits<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Retained earnings benefit the company by providing resources to support expansion, financial stability, and operational needs. Dividends, however, directly benefit shareholders by providing them with a portion of the company\u2019s profits, fulfilling their expectations for returns on investment.<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">By understanding these differences, businesses can make strategic decisions about how to balance retaining profits for growth with rewarding shareholders through dividends.<\/span><\/p>\r\n<h2><b>The Function of Retained Earnings<\/b><\/h2>\r\n<p><span style=\"font-weight: 400;\">Retained earnings serve specific purposes that justify their retention rather than distribution as dividends. Shareholders often agree upon their strategic use to support the company\u2019s financial stability and growth. Below are the key functions and objectives of retained earnings:<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">1. Financing business operations<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Businesses require sufficient cash flow to sustain daily operations and drive growth. Retained earnings provide a reliable source of funding to cover operational expenses, particularly when profits are limited. This use of funds often requires shareholder approval but ensures the company can continue running smoothly with the potential for expansion.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">2. Capital reserves<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Retained earnings also function as a reserve fund for financial emergencies. These reserves allow the company to address unexpected financial challenges without relying on external loans from third parties like banks, ensuring continued operations during difficult times.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">3. Business development<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Another critical use of retained earnings is as capital for business development. These funds can support various growth initiatives, from expanding infrastructure to investing in employee development. This dual-purpose use strengthens both the physical and human resources of the company, fostering long-term growth.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">4. Debt servicing for businesses<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Retained earnings can be effectively used to repay significant business debts. By utilizing these funds for debt payments, companies ensure timely repayments without impacting other funding sources. This approach protects the primary funds of the business while maintaining financial security.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">5. The company&#8217;s future investment capital<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Of course, business owners want a business that is not static or declining but wants growth and innovation to survive and thrive. Another profit-holding advantage is to expand the business or make an investment.<\/span><\/p>\r\n<p>Interested in deeper insights? You can also read our guide on how to analyze <a href=\"https:\/\/www.hashmicro.com\/blog\/retention-ratio\/\">retention ratio<\/a> trends across different industries.<\/p>\r\n<h2><b>Factors Causing Retained Profit<\/b><\/h2>\r\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-65167 size-full\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earnings-calculation.jpg\" alt=\"retained earnings calculation\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earnings-calculation.jpg 1200w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earnings-calculation-300x169.jpg 300w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earnings-calculation-1024x576.jpg 1024w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earnings-calculation-768x432.jpg 768w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earnings-calculation-747x420.jpg 747w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earnings-calculation-150x84.jpg 150w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earnings-calculation-696x392.jpg 696w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earnings-calculation-1068x601.jpg 1068w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/p>\r\n<p><span style=\"font-weight: 400;\">Several factors contribute to the occurrence of restrained profits, including the following:<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">1. There is a change in the company&#8217;s management<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">If the company&#8217;s control or<\/span><a href=\"https:\/\/www.hashmicro.com\/blog\/the-importance-of-management-for-your-business\/\"> <span style=\"font-weight: 400;\">management<\/span><\/a><span style=\"font-weight: 400;\"> changes, existing profits are usually maintained. This is done to allow the new management to adjust and demonstrate the credibility of its financial management. Gains are born in these cases to ensure job stability, suppress acts of suspicion or fraud, and so on.<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">Utilize HashMicro ERP Software to simplify enterprise management.<\/span><a href=\"https:\/\/www.hashmicro.com\/hash-core-erp\"> <span style=\"font-weight: 400;\">Software ERP<\/span><\/a><span style=\"font-weight: 400;\"> can help your business improve its overall control and visibility. Profit maximization and financial control are more practical and automatic.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">2. There was an error in the previous period&#8217;s financial statements<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">Another factor is the occurrence of errors in the financial statements of the previous period. In this case, the company must first improve the financial statements so that they are valid, after which only take into account the value of the earnings statement adequately held.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">3. There is an adjustment in the value of the rupiah from the previous period<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">The adjustment of the SGD value is also an influential factor. The SGD exchange rate can fluctuate at any time, affecting the company&#8217;s profit calculation results. Thus, accountants choose to maintain existing profits.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">4. Changes in the calculation method<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">The change in the calculation method can also contribute to retained earnings. For example, if the previous calculation method is always every month and then switches to weekly, it won&#8217;t be evident. Accountants will usually withhold existing capital gains due to ambiguous data.<\/span><\/p>\r\n<h3><span style=\"font-weight: 400;\">5. Changes in accounting principles from the previous period<\/span><\/h3>\r\n<p><span style=\"font-weight: 400;\">In addition, changes in accounting principles from the prior period may affect the value of retained earnings statements. For example, when the business begins to adopt Sharia accounting in the next period, bookkeeping and results must apply Sharia law.<\/span><\/p>\r\n<style>\r\n.cta-in-article-image .desktop-banner{\r\n    display: none;\r\n    text-align: center;\r\n}\r\n.cta-in-article-image .desktop-mobile{\r\n    display: block;\r\n    text-align: center;\r\n    width: 100%;\r\n}\r\n@media (min-width: 650px) {\r\n    .cta-in-article-image .desktop-banner {\r\n        display: block!important;\r\n    }\r\n}\r\n@media (min-width: 650px) {\r\n   .cta-in-article-image .desktop-mobile {\r\n        display: none!important;\r\n    }\r\n}\r\n<\/style>\r\n<div class=\"cta-in-article-image\">\r\n\t<a href=\"https:\/\/www.hashmicro.com\/grants?utm_source=blog&medium=banner-article\" target=\"_blank\" rel=\"noopener\">\r\n\t\t<div id=\"desktop-banner-container\">\r\n\t\t\t<div class=\"desktop-banner\">\r\n<!-- \tnew CTC Grants Banner\t\t -->\r\n\t\t\t\t<img decoding=\"async\" width='696' height='189' src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/07\/CTC-Grants-scaled.webp\" alt=\"download skema harga software erp\">\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t\t<div id=\"mobile-banner-container\">\r\n\t\t\t<div class=\"desktop-mobile\">\r\n\t\t\t\t<img decoding=\"async\" width='450' height='497' src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2023\/11\/EDG-Banner-Mobile.png.webp\" alt=\"download skema harga software erp\">\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t<\/a>\r\n<\/div>\r\n\r\n\r\n\r\n<p>\r\n\r\n\r\n\r\n<\/p>\r\n<h2 class=\"wp-block-heading\" id=\"4\"><strong>The formula for Retained Earnings Calculation<\/strong><\/h2>\r\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-22846 size-full\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/08\/accounting-software-on-cloud.webp\" alt=\"accounting software on cloud\" width=\"575\" height=\"468\" srcset=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/08\/accounting-software-on-cloud.webp 575w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/08\/accounting-software-on-cloud-300x244.webp 300w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/08\/accounting-software-on-cloud-150x122.webp 150w\" sizes=\"auto, (max-width: 575px) 100vw, 575px\" \/><\/p>\r\n<p>&nbsp;<\/p>\r\n<p>\r\n\r\n<\/p>\r\n<p>You have to compile retained earnings to become one of the essential financial statements for the company regularly. The ability of a business to operate effectively and achieve its business objectives depends on the quality of these reports.<\/p>\r\n<p>\r\n\r\n<\/p>\r\n<p>As a result, you must first understand how to calculate retained earnings, namely as follows:<\/p>\r\n<p>\r\n\r\n<\/p>\r\n<h3 class=\"wp-block-heading\">Step 1: Calculate gross profit<\/h3>\r\n<p>\r\n\r\n<\/p>\r\n<p>The calculation of the first component is the gross profit or profit that the business earns from sales, namely as follows:<\/p>\r\n<p>\r\n\r\n<\/p>\r\n<figure class=\"wp-block-pullquote\">\r\n<blockquote>\r\n<p>GROSS PROFIT = SALES FIGURE \u2013 COST OF GOODS<\/p>\r\n<\/blockquote>\r\n<\/figure>\r\n<p>\r\n\r\n<\/p>\r\n<h3 class=\"wp-block-heading\">Step 2: Calculate operating profit<\/h3>\r\n<p>\r\n\r\n<\/p>\r\n<p>If you have earned the amount of gross profit, the next is to calculate the company&#8217;s operating profit using the following formula:<\/p>\r\n<p>\r\n\r\n<\/p>\r\n<figure class=\"wp-block-pullquote\">\r\n<blockquote>\r\n<p>OPERATING PROFIT = GROSS PROFIT &#8211; OPERATING EXPENSES<\/p>\r\n<\/blockquote>\r\n<\/figure>\r\n<p>\r\n\r\n<\/p>\r\n<h3 class=\"wp-block-heading\">Step 3: Calculate net income before tax<\/h3>\r\n<p>\r\n\r\n<\/p>\r\n<p>The next step in determining retained earnings is determining net income before taxes. These calculations are by subtracting interest, amortization, and depreciation of operating profit.<\/p>\r\n<p>\r\n\r\n<\/p>\r\n<figure class=\"wp-block-pullquote\">\r\n<blockquote>\r\n<p>NET INCOME BEFORE TAX = OPERATING INCOME &#8211; (INTEREST+ AMORTIZATION+DEPRECIATION)<\/p>\r\n<\/blockquote>\r\n<\/figure>\r\n<p>\r\n\r\n<\/p>\r\n<h3 class=\"wp-block-heading\">Step 4: Calculating taxable net income<\/h3>\r\n<p>\r\n\r\n<\/p>\r\n<p>How to calculate net income after tax you can use the following formula:<\/p>\r\n<p>\r\n\r\n<\/p>\r\n<figure class=\"wp-block-pullquote\">\r\n<blockquote>\r\n<p>NET INCOME AFTER TAX = NET INCOME BEFORE TAX &#8211; TAX RATE<\/p>\r\n<\/blockquote>\r\n<\/figure>\r\n<p>\r\n\r\n<\/p>\r\n<h3 class=\"wp-block-heading\">Step 5: Calculate retained earnings<\/h3>\r\n<p>\r\n\r\n<\/p>\r\n<p>Once you know the company&#8217;s net income in a certain period, you can calculate how much retained profit the company can make, namely:<\/p>\r\n<p>\r\n\r\n<\/p>\r\n<figure class=\"wp-block-pullquote\">\r\n<blockquote>\r\n<p>RETAINED EARNINGS = NET INCOME AFTER TAX &#8211; DIVIDENDS<\/p>\r\n<\/blockquote>\r\n<\/figure>\r\n<p>\r\n\r\n<\/p>\r\n<p><span style=\"font-weight: 400;\">You can also read our article on the <\/span><a href=\"https:\/\/www.hashmicro.com\/blog\/best-accounting-software\/\"><span style=\"font-weight: 400;\">best accounting software<\/span><\/a><span style=\"font-weight: 400;\"> to discover tools that simplify financial management, including retained earnings calculations.<\/span><\/p>\r\n<p>\r\n\r\n\r\n\r\n<\/p>\r\n<h2 class=\"wp-block-heading\"><b>What Is Retained Earnings to Market Value?<\/b><\/h2>\r\n<p><span style=\"font-weight: 400;\">Retained earnings to market value is a financial metric that reflects the relationship between a company\u2019s accumulated retained earnings and its total market value.\u00a0<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">This ratio provides insights into how effectively a company has used its retained earnings to generate shareholder wealth. A higher ratio indicates that the company has successfully reinvested its earnings to drive growth and enhance market valuation.<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">To calculate this ratio, retained earnings are divided by the company&#8217;s market value, which is typically derived by multiplying the current stock price by the number of outstanding shares.\u00a0<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">For example, if a company has $10 million in retained earnings and a market value of $50 million, the retained earnings to market value ratio would be 0.2 or 20%.<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">This metric is particularly useful for investors and analysts when assessing a company\u2019s financial health and growth potential. It highlights whether retained earnings are being effectively utilized to maximize shareholder returns.\u00a0<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">However, the ratio should be evaluated alongside other financial indicators, as a low ratio could be due to high dividend payouts or other strategic factors rather than inefficiency in earnings management.<\/span><\/p>\r\n<h2><b>Conclusion\u00a0<\/b><\/h2>\r\n<p><span style=\"font-weight: 400;\">Calculating retained earnings manually will take time and effort. There is a possibility of incorrect Retained earnings are a crucial component of a company\u2019s financial strategy, representing the portion of net income kept for reinvestment, debt repayment, and other essential business needs.\u00a0<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">Understanding and effectively managing retained earnings is key to maintaining a company\u2019s long-term success. Businesses must leverage these funds wisely to balance shareholder expectations with sustainable growth strategies.<\/span><\/p>\r\n<p><a href=\"https:\/\/www.hashmicro.com\/accounting\"><span style=\"font-weight: 400;\">HashMicro Accounting Software<\/span><\/a><span style=\"font-weight: 400;\"> offers an innovative solution to simplify the management of retained earnings. With automated financial reporting, accurate data tracking, and seamless integration, HashMicro empowers businesses to optimize their financial decisions effortlessly.<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\">Take your business finances to the next level with HashMicro Accounting Software. Request a <\/span><a href=\"https:\/\/www.hashmicro.com\/free-product-tour\/\"><b>free demo<\/b><\/a><span style=\"font-weight: 400;\"> today and experience how it can transform your financial management!<\/span><\/p>\r\n<p><span style=\"font-weight: 400;\"><a href=\"https:\/\/www.hashmicro.com\/accounting?medium=moneysite-banner\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" width=\"712\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/06\/Accounting.webp\" alt=\"Accounting\"><\/a><\/span><\/p>\r\n<p>&nbsp;<\/p>","protected":false},"excerpt":{"rendered":"<p>Retained earnings are the portion of a company\u2019s net income that remains after dividends are paid to shareholders. These funds serve as a crucial indicator of a business\u2019s ability to reinvest in its operations, support expansion, or reserve resources for unforeseen challenges. Around 29% of companies now use automated accounts payable systems to improve accuracy, [&hellip;]<\/p>\n","protected":false},"author":153,"featured_media":65166,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[153],"tags":[1388],"class_list":{"0":"post-9624","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-accounting","8":"tag-retained-earnings"},"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>How to Calculate Retained Earnings Formula Accurately<\/title>\n<meta name=\"description\" content=\"Calculate retained earnings with the formula can calculate gross profit, operating profit, net income before tax, and taxable net income.\" \/>\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\/blog\/calculate-retained-earnings\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What Are Retained Earnings? Definition and Calculation Guide\" \/>\n<meta property=\"og:description\" content=\"Calculate retained earnings with the formula can calculate gross profit, operating profit, net income before tax, and taxable net income.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/\" \/>\n<meta property=\"og:site_name\" content=\"BusinessTech\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/web.facebook.com\/hashmicro\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-02-20T04:25:09+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-29T09:17:50+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earning.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Chandra Natsir\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@hashmicro\" \/>\n<meta name=\"twitter:site\" content=\"@hashmicro\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Chandra Natsir\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/\"},\"author\":{\"name\":\"Chandra Natsir\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/f17501aef487b92b4ffc58a7ef7ab97b\"},\"headline\":\"What Are Retained Earnings? Definition and Calculation Guide\",\"datePublished\":\"2024-02-20T04:25:09+00:00\",\"dateModified\":\"2025-12-29T09:17:50+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/\"},\"wordCount\":1953,\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earning.jpg\",\"keywords\":[\"Retained Earnings\"],\"articleSection\":[\"Accounting\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/\",\"name\":\"How to Calculate Retained Earnings Formula Accurately\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earning.jpg\",\"datePublished\":\"2024-02-20T04:25:09+00:00\",\"dateModified\":\"2025-12-29T09:17:50+00:00\",\"description\":\"Calculate retained earnings with the formula can calculate gross profit, operating profit, net income before tax, and taxable net income.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earning.jpg\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earning.jpg\",\"width\":1200,\"height\":675,\"caption\":\"retained earning\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What Are Retained Earnings? Definition and Calculation Guide\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#website\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/\",\"name\":\"BusinessTech\",\"description\":\"Business Management Blog\",\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.hashmicro.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#organization\",\"name\":\"HashMicro\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2016\/02\/bt_logo-1.png\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2016\/02\/bt_logo-1.png\",\"width\":334,\"height\":51,\"caption\":\"HashMicro\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/web.facebook.com\/hashmicro\/\",\"https:\/\/x.com\/hashmicro\",\"https:\/\/www.linkedin.com\/company\/hashmicro\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/f17501aef487b92b4ffc58a7ef7ab97b\",\"name\":\"Chandra Natsir\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2023\/02\/cropped-DALL\u00b7E-2023-02-13-16.32.57-a-real-photo-of-asian-man-1-1-96x96.png\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2023\/02\/cropped-DALL\u00b7E-2023-02-13-16.32.57-a-real-photo-of-asian-man-1-1-96x96.png\",\"caption\":\"Chandra Natsir\"},\"description\":\"A content writer with a strong interest in writing and technology. Chandra is dedicated to writing useful, entertaining, and relevant information for readers, and he continues to develop content that connects and inspires them.\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/author\/chandra-natsir\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to Calculate Retained Earnings Formula Accurately","description":"Calculate retained earnings with the formula can calculate gross profit, operating profit, net income before tax, and taxable net income.","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\/blog\/calculate-retained-earnings\/","og_locale":"en_US","og_type":"article","og_title":"What Are Retained Earnings? Definition and Calculation Guide","og_description":"Calculate retained earnings with the formula can calculate gross profit, operating profit, net income before tax, and taxable net income.","og_url":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/","og_site_name":"BusinessTech","article_publisher":"https:\/\/web.facebook.com\/hashmicro\/","article_published_time":"2024-02-20T04:25:09+00:00","article_modified_time":"2025-12-29T09:17:50+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earning.jpg","type":"image\/jpeg"}],"author":"Chandra Natsir","twitter_card":"summary_large_image","twitter_creator":"@hashmicro","twitter_site":"@hashmicro","twitter_misc":{"Written by":"Chandra Natsir","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/"},"author":{"name":"Chandra Natsir","@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/f17501aef487b92b4ffc58a7ef7ab97b"},"headline":"What Are Retained Earnings? Definition and Calculation Guide","datePublished":"2024-02-20T04:25:09+00:00","dateModified":"2025-12-29T09:17:50+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/"},"wordCount":1953,"publisher":{"@id":"https:\/\/www.hashmicro.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earning.jpg","keywords":["Retained Earnings"],"articleSection":["Accounting"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/","url":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/","name":"How to Calculate Retained Earnings Formula Accurately","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earning.jpg","datePublished":"2024-02-20T04:25:09+00:00","dateModified":"2025-12-29T09:17:50+00:00","description":"Calculate retained earnings with the formula can calculate gross profit, operating profit, net income before tax, and taxable net income.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#primaryimage","url":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earning.jpg","contentUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/02\/retained-earning.jpg","width":1200,"height":675,"caption":"retained earning"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/blog\/calculate-retained-earnings\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/blog\/"},{"@type":"ListItem","position":2,"name":"What Are Retained Earnings? Definition and Calculation Guide"}]},{"@type":"WebSite","@id":"https:\/\/www.hashmicro.com\/blog\/#website","url":"https:\/\/www.hashmicro.com\/blog\/","name":"BusinessTech","description":"Business Management Blog","publisher":{"@id":"https:\/\/www.hashmicro.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hashmicro.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.hashmicro.com\/blog\/#organization","name":"HashMicro","url":"https:\/\/www.hashmicro.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2016\/02\/bt_logo-1.png","contentUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2016\/02\/bt_logo-1.png","width":334,"height":51,"caption":"HashMicro"},"image":{"@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/web.facebook.com\/hashmicro\/","https:\/\/x.com\/hashmicro","https:\/\/www.linkedin.com\/company\/hashmicro"]},{"@type":"Person","@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/f17501aef487b92b4ffc58a7ef7ab97b","name":"Chandra Natsir","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2023\/02\/cropped-DALL\u00b7E-2023-02-13-16.32.57-a-real-photo-of-asian-man-1-1-96x96.png","contentUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2023\/02\/cropped-DALL\u00b7E-2023-02-13-16.32.57-a-real-photo-of-asian-man-1-1-96x96.png","caption":"Chandra Natsir"},"description":"A content writer with a strong interest in writing and technology. Chandra is dedicated to writing useful, entertaining, and relevant information for readers, and he continues to develop content that connects and inspires them.","url":"https:\/\/www.hashmicro.com\/blog\/author\/chandra-natsir\/"}]}},"order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/posts\/9624","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/users\/153"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/comments?post=9624"}],"version-history":[{"count":35,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/posts\/9624\/revisions"}],"predecessor-version":[{"id":77731,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/posts\/9624\/revisions\/77731"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/media\/65166"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/media?parent=9624"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/categories?post=9624"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/tags?post=9624"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}