{"id":1899,"date":"2025-01-13T05:35:53","date_gmt":"2025-01-13T05:35:53","guid":{"rendered":"https:\/\/donhit.com\/en\/?p=1899"},"modified":"2025-02-06T01:25:30","modified_gmt":"2025-02-06T01:25:30","slug":"zerodha-brokerage","status":"publish","type":"post","link":"https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/","title":{"rendered":"Zerodha Brokerage Calculator"},"content":{"rendered":"<p><center><div class=\"container123\">\r\n        <div class=\"calculator\">\r\n            <div class=\"header\">\r\n                <h2>Zerodha Brokerage Calculator<\/h2>\r\n                <p>Professional trading charges calculator with real-time updates and detailed breakdown<\/p>\r\n            <\/div>\r\n\r\n            <form id=\"calculatorForm\">\r\n                <div class=\"card\">\r\n                    <div class=\"card-title\">\r\n                        <span>Trade Details<\/span>\r\n                    <\/div>\r\n                    \r\n                    <div class=\"trade-type-select\">\r\n                        <div class=\"trade-type-option active\" data-type=\"equity\">Equity<\/div>\r\n                        <div class=\"trade-type-option\" data-type=\"futures\">Futures<\/div>\r\n                        <div class=\"trade-type-option\" data-type=\"options\">Options<\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"row\">\r\n                        <div class=\"input-group\">\r\n                            <label for=\"product\">Product Type<\/label>\r\n                            <select id=\"product\" required>\r\n                                <option value=\"intraday\">Intraday<\/option>\r\n                                <option value=\"delivery\">Delivery<\/option>\r\n                            <\/select>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"row\">\r\n                        <div class=\"input-group\">\r\n                            <label for=\"buyPrice\">Buy Price (\u20b9)<\/label>\r\n                            <input type=\"number\" id=\"buyPrice\" placeholder=\"Enter buy price\" required>\r\n                        <\/div>\r\n                        <div class=\"input-group\">\r\n                            <label for=\"sellPrice\">Sell Price (\u20b9)<\/label>\r\n                            <input type=\"number\" id=\"sellPrice\" placeholder=\"Enter sell price\" required>\r\n                        <\/div>\r\n                        <div class=\"input-group\">\r\n                            <label for=\"quantity\">Quantity<\/label>\r\n                            <input type=\"number\" id=\"quantity\" placeholder=\"Enter quantity\" required>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <button type=\"submit\" class=\"calculate-btn\">Calculate Charges<\/button>\r\n\r\n                <div class=\"loading\">\r\n                    <div><\/div>\r\n                    <div><\/div>\r\n                    <div><\/div>\r\n                <\/div>\r\n\r\n                <div class=\"result\">\r\n                    <div class=\"card\">\r\n                        <div class=\"card-title\">Charges Breakdown<\/div>\r\n                        <div class=\"result-grid\">\r\n                            <div class=\"result-item\">\r\n                                <div class=\"label\">Turnover<\/div>\r\n                                <div class=\"value\" id=\"turnover\">\u20b90<\/div>\r\n                            <\/div>\r\n                            <div class=\"result-item\">\r\n                                <div class=\"label\">Brokerage<\/div>\r\n                                <div class=\"value\" id=\"brokerage\">\u20b90<\/div>\r\n                            <\/div>\r\n                            <div class=\"result-item\">\r\n                                <div class=\"label\">STT<\/div>\r\n                                <div class=\"value\" id=\"stt\">\u20b90<\/div>\r\n                            <\/div>\r\n                            <div class=\"result-item\">\r\n                                <div class=\"label\">Exchange Charges<\/div>\r\n                                <div class=\"value\" id=\"exchangeCharges\">\u20b90<\/div>\r\n                            <\/div>\r\n                            <div class=\"result-item\">\r\n                                <div class=\"label\">GST<\/div>\r\n                                <div class=\"value\" id=\"gst\">\u20b90<\/div>\r\n                            <\/div>\r\n                            <div class=\"result-item\">\r\n                                <div class=\"label\">SEBI Charges<\/div>\r\n                                <div class=\"value\" id=\"sebiCharges\">\u20b90<\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"total\">\r\n                        <div class=\"total-grid\">\r\n                            <div class=\"total-item\">\r\n                                <div class=\"label\">Total Charges<\/div>\r\n                                <div class=\"value\" id=\"totalCharges\">\u20b90<\/div>\r\n                            <\/div>\r\n                            <div class=\"total-item\">\r\n                                <div class=\"label\">Net P&L<\/div>\r\n                                <div class=\"value\" id=\"netPL\">\u20b90<\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/form>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <script>\r\n        \/\/ Trade Type Selection\r\n        const tradeTypeOptions = document.querySelectorAll('.trade-type-option');\r\n        let selectedType = 'equity';\r\n\r\n        tradeTypeOptions.forEach(option => {\r\n            option.addEventListener('click', function() {\r\n                tradeTypeOptions.forEach(opt => opt.classList.remove('active'));\r\n                this.classList.add('active');\r\n                selectedType = this.dataset.type;\r\n                updateProductOptions(selectedType);\r\n            });\r\n        });\r\n\r\n        function updateProductOptions(type) {\r\n            const productSelect = document.getElementById('product');\r\n            productSelect.innerHTML = '';\r\n\r\n            if (type === 'equity') {\r\n                productSelect.add(new Option('Intraday', 'intraday'));\r\n                productSelect.add(new Option('Delivery', 'delivery'));\r\n            } else {\r\n                productSelect.add(new Option('Intraday', 'intraday'));\r\n            }\r\n        }\r\n\r\n        \/\/ Form Submission and Calculations\r\n        document.getElementById('calculatorForm').addEventListener('submit', function(e) {\r\n            e.preventDefault();\r\n            \r\n            \/\/ Show loading animation\r\n            document.querySelector('.loading').style.display = 'flex';\r\n            document.querySelector('.result').style.display = 'none';\r\n\r\n            setTimeout(() => {\r\n                const product = document.getElementById('product').value;\r\n                const buyPrice = parseFloat(document.getElementById('buyPrice').value);\r\n                const sellPrice = parseFloat(document.getElementById('sellPrice').value);\r\n                const quantity = parseInt(document.getElementById('quantity').value);\r\n\r\n                \/\/ Calculate turnover\r\n                const buyValue = buyPrice * quantity;\r\n                const sellValue = sellPrice * quantity;\r\n                const turnover = buyValue + sellValue;\r\n\r\n                \/\/ Calculate brokerage\r\n                let brokerage = 0;\r\n                if (selectedType === 'equity') {\r\n                    if (product === 'intraday') {\r\n                        brokerage = Math.min(0.0003 * turnover, 40);\r\n                    } else {\r\n                        brokerage = Math.min(0.0003 * sellValue, 20);\r\n                    }\r\n                } else if (selectedType === 'futures') {\r\n                    brokerage = Math.min(0.0003 * turnover, 40);\r\n                } else if (selectedType === 'options') {\r\n                    brokerage = 40;\r\n                }\r\n\r\n                \/\/ Calculate STT\r\n                let stt = 0;\r\n                if (selectedType === 'equity') {\r\n                    if (product === 'intraday') {\r\n                        stt = 0.00025 * sellValue;\r\n                    } else {\r\n                        stt = 0.001 * sellValue;\r\n                    }\r\n                } else if (selectedType === 'futures') {\r\nlet stt = 0;\r\n                if (selectedType === 'equity') {\r\n                    if (product === 'intraday') {\r\n                        stt = 0.00025 * sellValue;\r\n                    } else {\r\n                        stt = 0.001 * sellValue;\r\n                    }\r\n                } else if (selectedType === 'futures') {\r\n                    stt = 0.0001 * sellValue;\r\n                } else if (selectedType === 'options') {\r\n                    stt = 0.0005 * sellValue;\r\n                }\r\n\r\n                \/\/ Calculate other charges with more precise calculations\r\n                const exchangeCharges = 0.0000345 * turnover;\r\n                const gst = 0.18 * (brokerage + exchangeCharges);\r\n                const sebiCharges = 0.000001 * turnover;\r\n                const stampDuty = 0.00002 * buyValue;\r\n\r\n                \/\/ Calculate total charges and P&L\r\n                const totalCharges = brokerage + stt + exchangeCharges + gst + sebiCharges + stampDuty;\r\n                const pl = sellValue - buyValue;\r\n                const netPL = pl - totalCharges;\r\n\r\n                \/\/ Format numbers to Indian currency format\r\n                const formatCurrency = (number) => {\r\n                    return new Intl.NumberFormat('en-IN', {\r\n                        style: 'currency',\r\n                        currency: 'INR',\r\n                        minimumFractionDigits: 2,\r\n                        maximumFractionDigits: 2\r\n                    }).format(number).replace('INR', '\u20b9');\r\n                };\r\n\r\n                \/\/ Hide loading and show results with animations\r\n                document.querySelector('.loading').style.display = 'none';\r\n                const resultDiv = document.querySelector('.result');\r\n                resultDiv.style.display = 'block';\r\n                resultDiv.classList.add('animate__animated', 'animate__fadeIn');\r\n\r\n                \/\/ Update all values with animation\r\n                const updateValueWithAnimation = (elementId, value) => {\r\n                    const element = document.getElementById(elementId);\r\n                    element.textContent = formatCurrency(value);\r\n                    element.classList.add('animate__animated', 'animate__fadeInUp');\r\n                    element.addEventListener('animationend', () => {\r\n                        element.classList.remove('animate__animated', 'animate__fadeInUp');\r\n                    });\r\n                };\r\n\r\n                \/\/ Update all result values\r\n                updateValueWithAnimation('turnover', turnover);\r\n                updateValueWithAnimation('brokerage', brokerage);\r\n                updateValueWithAnimation('stt', stt);\r\n                updateValueWithAnimation('exchangeCharges', exchangeCharges);\r\n                updateValueWithAnimation('gst', gst);\r\n                updateValueWithAnimation('sebiCharges', sebiCharges);\r\n                updateValueWithAnimation('totalCharges', totalCharges);\r\n\r\n                \/\/ Update Net P&L with color coding\r\n                const netPLElement = document.getElementById('netPL');\r\n                netPLElement.textContent = formatCurrency(netPL);\r\n                netPLElement.className = 'value';\r\n                if (netPL > 0) {\r\n                    netPLElement.classList.add('profit');\r\n                } else if (netPL < 0) {\r\n                    netPLElement.classList.add('loss');\r\n                }\r\n            }, 800); \/\/ Simulated calculation delay for better UX\r\n        });\r\n\r\n        \/\/ Real-time validation and formatting\r\n        const numberInputs = document.querySelectorAll('input[type=\"number\"]');\r\n        numberInputs.forEach(input => {\r\n            input.addEventListener('input', function() {\r\n                if (this.value < 0) this.value = 0;\r\n                if (this.value > 999999999) this.value = 999999999;\r\n            });\r\n        });\r\n\r\n        \/\/ Add floating labels effect\r\n        document.querySelectorAll('.input-group input, .input-group select').forEach(element => {\r\n            element.addEventListener('focus', function() {\r\n                this.parentElement.classList.add('focused');\r\n            });\r\n\r\n            element.addEventListener('blur', function() {\r\n                if (!this.value) {\r\n                    this.parentElement.classList.remove('focused');\r\n                }\r\n            });\r\n\r\n            \/\/ Initialize state for pre-filled inputs\r\n            if (element.value) {\r\n                element.parentElement.classList.add('focused');\r\n            }\r\n        });\r\n\r\n        \/\/ Initialize tooltips\r\n        const tooltipTriggers = document.querySelectorAll('[data-tooltip]');\r\n        tooltipTriggers.forEach(trigger => {\r\n            trigger.addEventListener('mouseenter', e => {\r\n                const tooltip = document.createElement('div');\r\n                tooltip.className = 'tooltip';\r\n                tooltip.textContent = e.target.dataset.tooltip;\r\n                document.body.appendChild(tooltip);\r\n                \r\n                const rect = e.target.getBoundingClientRect();\r\n                tooltip.style.left = rect.left + 'px';\r\n                tooltip.style.top = (rect.top - tooltip.offsetHeight - 10) + 'px';\r\n            });\r\n\r\n            trigger.addEventListener('mouseleave', () => {\r\n                document.querySelector('.tooltip')?.remove();\r\n            });\r\n        });\r\n    <\/script><\/center><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[184],"tags":[],"class_list":["post-1899","post","type-post","status-publish","format-standard","hentry","category-calculator"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Zerodha Brokerage Calculator - DonHit<\/title>\n<meta name=\"description\" content=\"The Zerodha Brokerage Calculator is a powerful tool that helps traders accurately calculate brokerage fees, taxes, and total costs associated with equity trading\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Zerodha Brokerage Calculator - DonHit\" \/>\n<meta property=\"og:description\" content=\"The Zerodha Brokerage Calculator is a powerful tool that helps traders accurately calculate brokerage fees, taxes, and total costs associated with equity trading\" \/>\n<meta property=\"og:url\" content=\"https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/\" \/>\n<meta property=\"og:site_name\" content=\"DonHit - World of Tools\" \/>\n<meta property=\"article:published_time\" content=\"2025-01-13T05:35:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-02-06T01:25:30+00:00\" \/>\n<meta name=\"author\" content=\"DonHit\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DonHit\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Zerodha Brokerage Calculator - DonHit","description":"The Zerodha Brokerage Calculator is a powerful tool that helps traders accurately calculate brokerage fees, taxes, and total costs associated with equity trading","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:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/","og_locale":"en_US","og_type":"article","og_title":"Zerodha Brokerage Calculator - DonHit","og_description":"The Zerodha Brokerage Calculator is a powerful tool that helps traders accurately calculate brokerage fees, taxes, and total costs associated with equity trading","og_url":"https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/","og_site_name":"DonHit - World of Tools","article_published_time":"2025-01-13T05:35:53+00:00","article_modified_time":"2025-02-06T01:25:30+00:00","author":"DonHit","twitter_card":"summary_large_image","twitter_misc":{"Written by":"DonHit","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/#article","isPartOf":{"@id":"https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/"},"author":{"name":"DonHit","@id":"https:\/\/donhit.com\/en\/#\/schema\/person\/0c6ff7dcd8ba4810c56a532f09c33148"},"headline":"Zerodha Brokerage Calculator","datePublished":"2025-01-13T05:35:53+00:00","dateModified":"2025-02-06T01:25:30+00:00","mainEntityOfPage":{"@id":"https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/"},"wordCount":9,"commentCount":0,"publisher":{"@id":"https:\/\/donhit.com\/en\/#\/schema\/person\/0c6ff7dcd8ba4810c56a532f09c33148"},"articleSection":["Calculator"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/","url":"https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/","name":"Zerodha Brokerage Calculator - DonHit","isPartOf":{"@id":"https:\/\/donhit.com\/en\/#website"},"datePublished":"2025-01-13T05:35:53+00:00","dateModified":"2025-02-06T01:25:30+00:00","description":"The Zerodha Brokerage Calculator is a powerful tool that helps traders accurately calculate brokerage fees, taxes, and total costs associated with equity trading","breadcrumb":{"@id":"https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/donhit.com\/en\/calculator\/zerodha-brokerage\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Trang ch\u1ee7","item":"https:\/\/donhit.com\/en\/"},{"@type":"ListItem","position":2,"name":"Calculator","item":"https:\/\/donhit.com\/en\/category\/calculator\/"},{"@type":"ListItem","position":3,"name":"Zerodha Brokerage Calculator"}]},{"@type":"WebSite","@id":"https:\/\/donhit.com\/en\/#website","url":"https:\/\/donhit.com\/en\/","name":"DonHit - World of tools","description":"","publisher":{"@id":"https:\/\/donhit.com\/en\/#\/schema\/person\/0c6ff7dcd8ba4810c56a532f09c33148"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/donhit.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/donhit.com\/en\/#\/schema\/person\/0c6ff7dcd8ba4810c56a532f09c33148","name":"DonHit","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/donhit.com\/en\/#\/schema\/person\/image\/","url":"https:\/\/donhit.com\/en\/wp-content\/uploads\/2024\/11\/logo-donhit.webp","contentUrl":"https:\/\/donhit.com\/en\/wp-content\/uploads\/2024\/11\/logo-donhit.webp","width":400,"height":267,"caption":"DonHit"},"logo":{"@id":"https:\/\/donhit.com\/en\/#\/schema\/person\/image\/"},"description":"DonHit is a website designed to provide useful tools for everyone. Its primary goal is to support and empower the community. All the tools available on the site are completely free to use.","sameAs":["https:\/\/donhit.com\/en"],"url":"https:\/\/donhit.com\/en\/author\/admin_don\/"}]}},"_links":{"self":[{"href":"https:\/\/donhit.com\/en\/wp-json\/wp\/v2\/posts\/1899","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/donhit.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/donhit.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/donhit.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/donhit.com\/en\/wp-json\/wp\/v2\/comments?post=1899"}],"version-history":[{"count":3,"href":"https:\/\/donhit.com\/en\/wp-json\/wp\/v2\/posts\/1899\/revisions"}],"predecessor-version":[{"id":2035,"href":"https:\/\/donhit.com\/en\/wp-json\/wp\/v2\/posts\/1899\/revisions\/2035"}],"wp:attachment":[{"href":"https:\/\/donhit.com\/en\/wp-json\/wp\/v2\/media?parent=1899"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/donhit.com\/en\/wp-json\/wp\/v2\/categories?post=1899"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/donhit.com\/en\/wp-json\/wp\/v2\/tags?post=1899"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}