{"id":9856,"date":"2026-07-31T09:53:04","date_gmt":"2026-07-31T09:53:04","guid":{"rendered":"https:\/\/tradegoai.app\/?post_type=tools&#038;p=9856"},"modified":"2026-07-31T09:59:03","modified_gmt":"2026-07-31T09:59:03","slug":"%ec%98%81%ec%97%85-%ed%8c%8c%ec%9d%b4%ed%94%84%eb%9d%bc%ec%9d%b8-%ec%bb%a4%eb%b2%84%eb%a6%ac%ec%a7%80-%ea%b3%84%ec%82%b0%ea%b8%b0","status":"publish","type":"tools","link":"https:\/\/tradegoai.app\/ko\/tools\/sales-pipeline-coverage-calculator\/","title":{"rendered":"\uc601\uc5c5 \ud30c\uc774\ud504\ub77c\uc778 \ucee4\ubc84\ub9ac\uc9c0 \uacc4\uc0b0\uae30"},"content":{"rendered":"    <main id=\"tga-pipeline-1\" class=\"tga-pipeline-tool\" aria-labelledby=\"tga-pipeline-1-title\">\n        <style>\n            #tga-pipeline-1 {\n                --navy:#0f1831;--purple:#6528f7;--purple-dark:#501bd8;--lilac:#f2efff;\n                --muted:#64748b;--line:#e2e8f0;--white:#fff;--success:#047857;--danger:#b91c1c;\n                width:100%;max-width:1180px;margin:44px auto 72px;padding:0 22px;color:var(--navy);\n                font-family:inherit;box-sizing:border-box\n            }\n            #tga-pipeline-1 *,#tga-pipeline-1 *::before,#tga-pipeline-1 *::after{box-sizing:border-box}\n            #tga-pipeline-1 .tga-pipeline-hero{position:relative;overflow:hidden;padding:46px 48px;border-radius:22px;\n                background:radial-gradient(circle at 88% 18%,rgba(101,40,247,.78),transparent 34%),linear-gradient(135deg,#081127,#131d42);color:#fff}\n            #tga-pipeline-1 .tga-pipeline-hero::after{position:absolute;right:-78px;bottom:-118px;width:320px;height:320px;border:1px solid rgba(255,255,255,.16);border-radius:50%;content:\"\"}\n            #tga-pipeline-1 .tga-pipeline-eyebrow{position:relative;z-index:1;margin:0 0 12px;color:#cbbcff;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}\n            #tga-pipeline-1 .tga-pipeline-hero h1{position:relative;z-index:1;max-width:930px;margin:0 0 14px;color:#fff;font-size:clamp(36px,5.5vw,62px);line-height:1.03;letter-spacing:-.04em}\n            #tga-pipeline-1 .tga-pipeline-hero p:last-child{position:relative;z-index:1;max-width:790px;margin:0;color:#dce4ff;font-size:18px;line-height:1.65}\n            #tga-pipeline-1 .tga-pipeline-workspace{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:24px;margin-top:28px;align-items:start}\n            #tga-pipeline-1 .tga-pipeline-workspace>*{min-width:0}\n            #tga-pipeline-1 .tga-pipeline-panel,#tga-pipeline-1 .tga-pipeline-section{border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 16px 45px rgba(15,24,49,.06)}\n            #tga-pipeline-1 .tga-pipeline-panel{padding:28px} #tga-pipeline-1 .tga-pipeline-section{margin-top:28px;padding:30px}\n            #tga-pipeline-1 h2{margin:0 0 8px;color:var(--navy);font-size:25px;line-height:1.25;letter-spacing:-.02em}\n            #tga-pipeline-1 .tga-pipeline-intro,#tga-pipeline-1 .tga-pipeline-section>p{margin:0;color:var(--muted);line-height:1.7}\n            #tga-pipeline-1 .tga-pipeline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}\n            #tga-pipeline-1 .tga-pipeline-wide{grid-column:1\/-1}\n            #tga-pipeline-1 label{display:block;margin:0 0 7px;color:#334155;font-size:13px;font-weight:700}\n            #tga-pipeline-1 input,#tga-pipeline-1 select{width:100%;min-height:48px;margin:0;padding:10px 13px;border:1px solid #cbd5e1;border-radius:10px;outline:0;background:#fff;color:var(--navy);font:inherit;font-size:15px}\n            #tga-pipeline-1 input:focus,#tga-pipeline-1 select:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(101,40,247,.12)}\n            #tga-pipeline-1 .tga-pipeline-table-wrap{margin-top:22px;overflow-x:auto;border:1px solid var(--line);border-radius:12px}\n            #tga-pipeline-1 table{width:100%;min-width:520px;border-collapse:collapse}\n            #tga-pipeline-1 th,#tga-pipeline-1 td{padding:11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}\n            #tga-pipeline-1 th{background:#f8fafc;color:#334155;font-size:12px;text-transform:uppercase;letter-spacing:.04em}\n            #tga-pipeline-1 tr:last-child td{border-bottom:0}\n            #tga-pipeline-1 td input{min-height:42px;padding:8px 10px;font-size:14px}\n            #tga-pipeline-1 .tga-pipeline-error,#tga-pipeline-1 .tga-pipeline-status{min-height:22px;margin:13px 0 0;font-size:13px;font-weight:700;line-height:1.5}\n            #tga-pipeline-1 .tga-pipeline-error{color:var(--danger)} #tga-pipeline-1 .tga-pipeline-status{color:var(--success)}\n            #tga-pipeline-1 [hidden]{display:none!important}\n            #tga-pipeline-1 .tga-pipeline-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}\n            #tga-pipeline-1 .tga-pipeline-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 14px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:var(--navy);cursor:pointer;font:inherit;font-size:14px;font-weight:800;line-height:1.2;text-decoration:none}\n            #tga-pipeline-1 .tga-pipeline-button:hover{border-color:var(--purple);transform:translateY(-1px)}\n            #tga-pipeline-1 .tga-pipeline-primary{min-height:50px;padding:11px 19px;border-color:var(--purple);background:var(--purple);color:#fff}\n            #tga-pipeline-1 .tga-pipeline-primary:hover{border-color:var(--purple-dark);background:var(--purple-dark)}\n            #tga-pipeline-1 .tga-pipeline-result{min-height:610px}\n            #tga-pipeline-1 .tga-pipeline-empty{margin-top:22px;padding:28px 22px;border:1px dashed #cbd5e1;border-radius:14px;background:#f8fafc;color:var(--muted);line-height:1.7;text-align:center}\n            #tga-pipeline-1 .tga-pipeline-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}\n            #tga-pipeline-1 .tga-pipeline-metric{min-width:0;padding:15px;border:1px solid var(--line);border-radius:12px;background:#fbfdff}\n            #tga-pipeline-1 .tga-pipeline-metric span{display:block;color:var(--muted);font-size:12px;font-weight:700;line-height:1.4}\n            #tga-pipeline-1 .tga-pipeline-metric strong{display:block;margin-top:5px;color:var(--navy);font-size:21px;line-height:1.25;overflow-wrap:anywhere}\n            #tga-pipeline-1 .tga-pipeline-callout{margin-top:15px;padding:16px;border-left:4px solid var(--purple);border-radius:10px;background:var(--lilac);color:#334155;line-height:1.65}\n            #tga-pipeline-1 .tga-pipeline-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}\n            #tga-pipeline-1 .tga-pipeline-guide article{padding:18px;border:1px solid var(--line);border-radius:13px;background:#fbfdff}\n            #tga-pipeline-1 .tga-pipeline-guide h3{margin:0 0 7px;font-size:16px;line-height:1.35} #tga-pipeline-1 .tga-pipeline-guide p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}\n            #tga-pipeline-1 .tga-pipeline-cta{display:flex;gap:28px;align-items:center;justify-content:space-between;margin-top:28px;padding:34px 38px;border-radius:18px;background:radial-gradient(circle at 88% 18%,rgba(101,40,247,.65),transparent 38%),linear-gradient(135deg,#081127,#131d42);color:#fff}\n            #tga-pipeline-1 .tga-pipeline-cta h2{color:#fff;font-size:28px} #tga-pipeline-1 .tga-pipeline-cta p{max-width:720px;margin:0;color:#dce4ff;line-height:1.7}\n            #tga-pipeline-1 .tga-pipeline-cta a{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:11px 19px;border-radius:10px;background:#fff;color:var(--navy);font-weight:800;text-decoration:none}\n            #tga-pipeline-1 .tga-pipeline-faq{display:grid;gap:10px;margin-top:20px}\n            #tga-pipeline-1 details{border:1px solid var(--line);border-radius:12px;background:#fff} #tga-pipeline-1 summary{padding:16px 18px;cursor:pointer;font-weight:800} #tga-pipeline-1 details p{margin:0;padding:0 18px 17px;color:var(--muted);line-height:1.7}\n            #tga-pipeline-1 .tga-pipeline-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}\n            #tga-pipeline-1 .tga-pipeline-related a{display:block;padding:20px;border:1px solid var(--line);border-radius:13px;color:var(--navy);text-decoration:none}\n            #tga-pipeline-1 .tga-pipeline-related a:hover{border-color:var(--purple)} #tga-pipeline-1 .tga-pipeline-related strong{display:block;margin-bottom:7px;color:var(--purple)} #tga-pipeline-1 .tga-pipeline-related span{display:block;color:var(--muted);font-size:14px;line-height:1.6}\n            @media(max-width:900px){#tga-pipeline-1 .tga-pipeline-workspace{grid-template-columns:1fr}#tga-pipeline-1 .tga-pipeline-result{min-height:0}#tga-pipeline-1 .tga-pipeline-guide,#tga-pipeline-1 .tga-pipeline-related{grid-template-columns:1fr}#tga-pipeline-1 .tga-pipeline-cta{align-items:flex-start;flex-direction:column}}\n            @media(max-width:600px){#tga-pipeline-1{margin-top:28px;padding:0 20px}#tga-pipeline-1 .tga-pipeline-hero{padding:32px 23px}#tga-pipeline-1 .tga-pipeline-hero h1{font-size:36px}#tga-pipeline-1 .tga-pipeline-panel,#tga-pipeline-1 .tga-pipeline-section{padding:23px 19px}#tga-pipeline-1 .tga-pipeline-grid,#tga-pipeline-1 .tga-pipeline-metrics{grid-template-columns:1fr}#tga-pipeline-1 .tga-pipeline-wide{grid-column:auto}#tga-pipeline-1 input,#tga-pipeline-1 select{font-size:16px}#tga-pipeline-1 .tga-pipeline-actions{display:grid;grid-template-columns:1fr}#tga-pipeline-1 .tga-pipeline-button,#tga-pipeline-1 .tga-pipeline-cta a{width:100%}#tga-pipeline-1 .tga-pipeline-cta{padding:28px 22px}}\n        <\/style>\n\n        <section class=\"tga-pipeline-hero\">\n            <p class=\"tga-pipeline-eyebrow\">Know Whether Your Pipeline Can Support the Target<\/p>\n            <h1 id=\"tga-pipeline-1-title\">Sales Pipeline Coverage Calculator<\/h1>\n            <p>Turn stage values and probabilities into weighted coverage, a revenue gap, and the additional opportunity value your team needs to create.<\/p>\n        <\/section>\n\n        <section class=\"tga-pipeline-workspace\" aria-label=\"Sales pipeline coverage workspace\">\n            <form class=\"tga-pipeline-panel tga-pipeline-form\" novalidate>\n                <h2>Enter Target and Pipeline Values<\/h2>\n                <p class=\"tga-pipeline-intro\">Use one currency throughout and enter the open opportunity value currently held in each stage.<\/p>\n                <div class=\"tga-pipeline-grid\">\n                    <div><label for=\"tga-pipeline-1-currency\">Currency<\/label><select id=\"tga-pipeline-1-currency\" data-field=\"currency\"><option>USD<\/option><option>EUR<\/option><option>GBP<\/option><option>CNY<\/option><option>JPY<\/option><option>KRW<\/option><option>AUD<\/option><option>CAD<\/option><\/select><\/div>\n                    <div><label for=\"tga-pipeline-1-target\">Revenue target<\/label><input id=\"tga-pipeline-1-target\" data-field=\"target\" type=\"number\" value=\"200000\" min=\"0.01\" max=\"1000000000000\" step=\"0.01\" required><\/div>\n                    <div><label for=\"tga-pipeline-1-won\">Closed-won revenue<\/label><input id=\"tga-pipeline-1-won\" data-field=\"won\" type=\"number\" value=\"50000\" min=\"0\" max=\"1000000000000\" step=\"0.01\" required><\/div>\n                    <div><label for=\"tga-pipeline-1-win-rate\">Assumed win rate for new pipeline (%)<\/label><input id=\"tga-pipeline-1-win-rate\" data-field=\"winRate\" type=\"number\" value=\"30\" min=\"0.01\" max=\"100\" step=\"0.01\" required><\/div>\n                    <div><label for=\"tga-pipeline-1-deal\">Average opportunity value<\/label><input id=\"tga-pipeline-1-deal\" data-field=\"dealValue\" type=\"number\" value=\"20000\" min=\"0.01\" max=\"1000000000000\" step=\"0.01\" required><\/div>\n                    <div><label for=\"tga-pipeline-1-days\">Days remaining in target period<\/label><input id=\"tga-pipeline-1-days\" data-field=\"days\" type=\"number\" value=\"60\" min=\"1\" max=\"3650\" step=\"1\" required><\/div>\n                <\/div>\n                <div class=\"tga-pipeline-table-wrap\">\n                    <table>\n                        <thead><tr><th>Pipeline stage<\/th><th>Open value<\/th><th>Probability (%)<\/th><\/tr><\/thead>\n                        <tbody>\n                                                            <tr data-stage-row>\n                                    <td><input aria-label=\"Stage name\" data-stage-name type=\"text\" value=\"Discovery\" maxlength=\"60\"><\/td>\n                                    <td><input aria-label=\"Open opportunity value\" data-stage-value type=\"number\" value=\"100000\" min=\"0\" max=\"1000000000000\" step=\"0.01\"><\/td>\n                                    <td><input aria-label=\"Stage probability\" data-stage-probability type=\"number\" value=\"20\" min=\"0\" max=\"100\" step=\"0.01\"><\/td>\n                                <\/tr>\n                                                            <tr data-stage-row>\n                                    <td><input aria-label=\"Stage name\" data-stage-name type=\"text\" value=\"Qualified\" maxlength=\"60\"><\/td>\n                                    <td><input aria-label=\"Open opportunity value\" data-stage-value type=\"number\" value=\"80000\" min=\"0\" max=\"1000000000000\" step=\"0.01\"><\/td>\n                                    <td><input aria-label=\"Stage probability\" data-stage-probability type=\"number\" value=\"40\" min=\"0\" max=\"100\" step=\"0.01\"><\/td>\n                                <\/tr>\n                                                            <tr data-stage-row>\n                                    <td><input aria-label=\"Stage name\" data-stage-name type=\"text\" value=\"Proposal\" maxlength=\"60\"><\/td>\n                                    <td><input aria-label=\"Open opportunity value\" data-stage-value type=\"number\" value=\"50000\" min=\"0\" max=\"1000000000000\" step=\"0.01\"><\/td>\n                                    <td><input aria-label=\"Stage probability\" data-stage-probability type=\"number\" value=\"60\" min=\"0\" max=\"100\" step=\"0.01\"><\/td>\n                                <\/tr>\n                                                            <tr data-stage-row>\n                                    <td><input aria-label=\"Stage name\" data-stage-name type=\"text\" value=\"Negotiation\" maxlength=\"60\"><\/td>\n                                    <td><input aria-label=\"Open opportunity value\" data-stage-value type=\"number\" value=\"30000\" min=\"0\" max=\"1000000000000\" step=\"0.01\"><\/td>\n                                    <td><input aria-label=\"Stage probability\" data-stage-probability type=\"number\" value=\"80\" min=\"0\" max=\"100\" step=\"0.01\"><\/td>\n                                <\/tr>\n                                                    <\/tbody>\n                    <\/table>\n                <\/div>\n                <p class=\"tga-pipeline-error\" role=\"alert\" aria-live=\"assertive\">\n                    <span data-error=\"invalid\" hidden>Enter valid values within the displayed limits. Target, win rate, average opportunity value, and whole-number days must be greater than zero.<\/span>\n                    <span data-error=\"won\" hidden>Closed-won revenue cannot exceed the revenue target.<\/span>\n                    <span data-error=\"stage\" hidden>Each pipeline stage needs a name, a non-negative value, and a probability from 0% to 100%.<\/span>\n                <\/p>\n                <div class=\"tga-pipeline-actions\">\n                    <button class=\"tga-pipeline-button tga-pipeline-primary\" type=\"submit\">Calculate Pipeline Coverage<\/button>\n                    <button class=\"tga-pipeline-button\" data-action=\"reset\" type=\"button\">Reset<\/button>\n                <\/div>\n            <\/form>\n\n            <section class=\"tga-pipeline-panel tga-pipeline-result\" aria-labelledby=\"tga-pipeline-1-result-title\">\n                <h2 id=\"tga-pipeline-1-result-title\">Pipeline Coverage Plan<\/h2>\n                <p class=\"tga-pipeline-intro\">Compare nominal pipeline coverage with probability-weighted support for the remaining target.<\/p>\n                <div class=\"tga-pipeline-empty\" data-empty>\n                    Enter the target and current stage values, then select Calculate Pipeline Coverage.\n                    <span class=\"tga-pipeline-status\" data-reset-status hidden>The example pipeline has been restored.<\/span>\n                <\/div>\n                <div data-output hidden>\n                    <div class=\"tga-pipeline-metrics\">\n                        <div class=\"tga-pipeline-metric\"><span>Remaining target<\/span><strong data-result=\"remaining\">\u2014<\/strong><\/div>\n                        <div class=\"tga-pipeline-metric\"><span>Open pipeline value<\/span><strong data-result=\"open\">\u2014<\/strong><\/div>\n                        <div class=\"tga-pipeline-metric\"><span>Weighted pipeline value<\/span><strong data-result=\"weighted\">\u2014<\/strong><\/div>\n                        <div class=\"tga-pipeline-metric\"><span>Unweighted coverage<\/span><strong data-result=\"coverage\">\u2014<\/strong><\/div>\n                        <div class=\"tga-pipeline-metric\"><span>Weighted coverage<\/span><strong data-result=\"weightedCoverage\">\u2014<\/strong><\/div>\n                        <div class=\"tga-pipeline-metric\"><span>Weighted revenue gap<\/span><strong data-result=\"gap\">\u2014<\/strong><\/div>\n                        <div class=\"tga-pipeline-metric\"><span>Additional pipeline needed<\/span><strong data-result=\"additional\">\u2014<\/strong><\/div>\n                        <div class=\"tga-pipeline-metric\"><span>Approximate new opportunities<\/span><strong data-result=\"opportunities\">\u2014<\/strong><\/div>\n                        <div class=\"tga-pipeline-metric\"><span>Weekly pipeline creation target<\/span><strong data-result=\"weekly\">\u2014<\/strong><\/div>\n                    <\/div>\n                    <div class=\"tga-pipeline-callout\" data-callout><\/div>\n                    <div class=\"tga-pipeline-actions\">\n                        <button class=\"tga-pipeline-button\" data-action=\"copy\" type=\"button\">Copy Summary<\/button>\n                        <button class=\"tga-pipeline-button\" data-action=\"download\" type=\"button\">Download CSV<\/button>\n                    <\/div>\n                    <p class=\"tga-pipeline-status\" role=\"status\" aria-live=\"polite\">\n                        <span data-status=\"calculated\" hidden>Pipeline coverage calculated.<\/span>\n                        <span data-status=\"copied\" hidden>Summary copied.<\/span>\n                        <span data-status=\"copyFailed\" hidden>Copy failed. Select and copy the result manually.<\/span>\n                        <span data-status=\"downloaded\" hidden>CSV downloaded.<\/span>\n                    <\/p>\n                <\/div>\n            <\/section>\n        <\/section>\n\n        <section class=\"tga-pipeline-section\">\n            <h2>How to Read the Coverage Plan<\/h2>\n            <p>Use the ratios as transparent planning signals and review stage values, probabilities, close dates, and deal quality with your team.<\/p>\n            <div class=\"tga-pipeline-guide\">\n                <article><h3>Nominal Coverage<\/h3><p>Open pipeline divided by the remaining target shows how much opportunity value is available before probabilities are applied.<\/p><\/article>\n                <article><h3>Weighted Support<\/h3><p>Every stage contributes its open value multiplied by its probability. The sum is compared with the remaining target.<\/p><\/article>\n                <article><h3>Creation Requirement<\/h3><p>The weighted gap is converted into new pipeline using your assumed win rate, average opportunity value, and days remaining.<\/p><\/article>\n            <\/div>\n        <\/section>\n\n        <section class=\"tga-pipeline-cta\">\n            <div><h2>Build a More Connected International Sales Workflow<\/h2><p>Explore TradeGoAI services for buyer research, sales preparation, trade documentation, risk review, and market visibility.<\/p><\/div>\n            <a href=\"https:\/\/tradegoai.app\/ko\/services\/\">Explore Services \u2192<\/a>\n        <\/section>\n\n        <section class=\"tga-pipeline-section\">\n            <h2>Frequently Asked Questions<\/h2>\n            <div class=\"tga-pipeline-faq\">\n                                    <details><summary>What is pipeline coverage?<\/summary><p>Pipeline coverage compares open opportunity value with the revenue target that remains after closed-won revenue. A 3\u00d7 unweighted coverage ratio means the open pipeline is three times the remaining target.<\/p><\/details>\n                                    <details><summary>How is weighted pipeline value calculated?<\/summary><p>Each stage value is multiplied by its probability, then the stage contributions are added. The result is a planning estimate, not a promise that the revenue will close.<\/p><\/details>\n                                    <details><summary>What does additional pipeline needed mean?<\/summary><p>The calculator divides the weighted revenue gap by your assumed win rate for newly created opportunities. It estimates the new unweighted opportunity value needed to cover that gap.<\/p><\/details>\n                                    <details><summary>Should stage probability equal my overall win rate?<\/summary><p>Not necessarily. Stage probabilities describe the current open pipeline, while the assumed new-opportunity win rate converts a remaining weighted gap into the new pipeline value to create.<\/p><\/details>\n                                    <details><summary>Can this replace a CRM forecast?<\/summary><p>Use it as a transparent planning worksheet. It does not model opportunity age, close-date slippage, deal dependencies, rep capacity, seasonality, or the forecasting rules in your CRM.<\/p><\/details>\n                                    <details><summary>Are my pipeline values saved?<\/summary><p>No. The calculation runs in your browser and the values are not saved by this tool. Reset restores the example pipeline.<\/p><\/details>\n                            <\/div>\n        <\/section>\n\n        <section class=\"tga-pipeline-section\">\n            <h2>Related Free Tools<\/h2>\n            <p>Continue from pipeline planning into lead cleanup, CRM preparation, and transparent lead prioritization.<\/p>\n            <div class=\"tga-pipeline-related\">\n                <a href=\"https:\/\/tradegoai.app\/ko\/tools\/lead-list-cleaner\/\"><strong>Lead List Cleaner<\/strong><span>Clean, normalize, and deduplicate pasted lead data before outreach or CRM import.<\/span><\/a>\n                <a href=\"https:\/\/tradegoai.app\/ko\/tools\/crm-import-formatter\/\"><strong>CRM Import Formatter<\/strong><span>Map and prepare lead fields for review before importing them into a CRM.<\/span><\/a>\n                <a href=\"https:\/\/tradegoai.app\/ko\/tools\/rule-based-lead-scorecard\/\"><strong>Rule-Based Lead Scorecard<\/strong><span>Apply visible qualification rules to sort leads into practical follow-up priorities.<\/span><\/a>\n            <\/div>\n        <\/section>\n\n        <div data-i18n hidden>\n            <span data-key=\"calloutLead\">Planning signal:<\/span>\n            <span data-key=\"covered\">The weighted pipeline currently supports the remaining target.<\/span>\n            <span data-key=\"shortfall\">The weighted pipeline is below the remaining target. Use the additional-pipeline estimate as a creation goal, then review deal quality and timing.<\/span>\n            <span data-key=\"title\">Sales Pipeline Coverage Plan<\/span>\n            <span data-key=\"currency\">Currency<\/span><span data-key=\"target\">Revenue target<\/span><span data-key=\"won\">Closed-won revenue<\/span>\n            <span data-key=\"remaining\">Remaining target<\/span><span data-key=\"open\">Open pipeline value<\/span><span data-key=\"weighted\">Weighted pipeline value<\/span>\n            <span data-key=\"coverage\">Unweighted coverage<\/span><span data-key=\"weightedCoverage\">Weighted coverage<\/span>\n            <span data-key=\"gap\">Weighted revenue gap<\/span><span data-key=\"additional\">Additional pipeline needed<\/span>\n            <span data-key=\"opportunities\">Approximate new opportunities<\/span><span data-key=\"weekly\">Weekly pipeline creation target<\/span>\n            <span data-key=\"stage\">Pipeline stage<\/span><span data-key=\"stageValue\">Open value<\/span><span data-key=\"probability\">Probability<\/span>\n        <\/div>\n\n        <script>\n        (function(){\n            'use strict';\n            const root=document.getElementById(\"tga-pipeline-1\");if(!root||root.dataset.ready==='1')return;root.dataset.ready='1';\n            const form=root.querySelector('.tga-pipeline-form'),empty=root.querySelector('[data-empty]'),output=root.querySelector('[data-output]'),callout=root.querySelector('[data-callout]');\n            const defaults={currency:'USD',target:'200000',won:'50000',winRate:'30',dealValue:'20000',days:'60'};\n            const defaultStages=[['Discovery','100000','20'],['Qualified','80000','40'],['Proposal','50000','60'],['Negotiation','30000','80']];\n            const fields={},results={},labels={};root.querySelectorAll('[data-field]').forEach(n=>fields[n.dataset.field]=n);root.querySelectorAll('[data-result]').forEach(n=>results[n.dataset.result]=n);\n            function loadLabels(){root.querySelectorAll('[data-i18n] [data-key]').forEach(n=>labels[n.dataset.key]=n.textContent.trim())}loadLabels();\n            let current=null;\n            function clear(){root.querySelectorAll('[data-error],[data-status],[data-reset-status]').forEach(n=>n.hidden=true)}\n            function message(type,key){clear();const n=root.querySelector(`[data-${type}=\"${key}\"]`);if(n)n.hidden=false}\n            function number(node){return Number(node.value)}\n            function read(){\n                const data={currency:fields.currency.value,target:number(fields.target),won:number(fields.won),winRate:number(fields.winRate),dealValue:number(fields.dealValue),days:number(fields.days),stages:[]};\n                if(!Number.isFinite(data.target)||data.target<=0||data.target>1e12||!Number.isFinite(data.won)||data.won<0||data.won>1e12||!Number.isFinite(data.winRate)||data.winRate<=0||data.winRate>100||!Number.isFinite(data.dealValue)||data.dealValue<=0||data.dealValue>1e12||!Number.isInteger(data.days)||data.days<1||data.days>3650)throw new Error('invalid');\n                if(data.won>data.target)throw new Error('won');\n                root.querySelectorAll('[data-stage-row]').forEach(row=>{const stage={name:row.querySelector('[data-stage-name]').value.trim(),value:number(row.querySelector('[data-stage-value]')),probability:number(row.querySelector('[data-stage-probability]'))};if(!stage.name||!Number.isFinite(stage.value)||stage.value<0||stage.value>1e12||!Number.isFinite(stage.probability)||stage.probability<0||stage.probability>100)throw new Error('stage');data.stages.push(stage)});\n                return data;\n            }\n            function calculate(data){\n                const remaining=data.target-data.won,open=data.stages.reduce((s,x)=>s+x.value,0),weighted=data.stages.reduce((s,x)=>s+x.value*x.probability\/100,0);\n                const coverage=remaining===0?null:open\/remaining,weightedCoverage=remaining===0?null:weighted\/remaining,gap=Math.max(0,remaining-weighted);\n                const additional=gap\/(data.winRate\/100),opportunities=additional===0?0:Math.ceil(additional\/data.dealValue),weeks=data.days\/7,weekly=additional\/weeks;\n                return {input:data,remaining,open,weighted,coverage,weightedCoverage,gap,additional,opportunities,weekly};\n            }\n            function money(value,currency){try{return new Intl.NumberFormat(undefined,{style:'currency',currency,currencyDisplay:'code',minimumFractionDigits:2,maximumFractionDigits:2}).format(value)}catch(e){return currency+' '+value.toFixed(2)}}\n            function ratio(value){return value===null?'Target already met':new Intl.NumberFormat(undefined,{minimumFractionDigits:2,maximumFractionDigits:2}).format(value)+'\u00d7'}\n            function render(r){const c=r.input.currency;results.remaining.textContent=money(r.remaining,c);results.open.textContent=money(r.open,c);results.weighted.textContent=money(r.weighted,c);results.coverage.textContent=ratio(r.coverage);results.weightedCoverage.textContent=ratio(r.weightedCoverage);results.gap.textContent=money(r.gap,c);results.additional.textContent=money(r.additional,c);results.opportunities.textContent=String(r.opportunities);results.weekly.textContent=money(r.weekly,c);callout.textContent='';const strong=document.createElement('strong');strong.textContent=labels.calloutLead+' ';callout.appendChild(strong);callout.appendChild(document.createTextNode(r.gap===0?labels.covered:labels.shortfall));empty.hidden=true;output.hidden=false;message('status','calculated')}\n            function lines(r){const c=r.input.currency,rows=[[labels.currency,c],[labels.target,money(r.input.target,c)],[labels.won,money(r.input.won,c)],[labels.remaining,money(r.remaining,c)],[labels.open,money(r.open,c)],[labels.weighted,money(r.weighted,c)],[labels.coverage,ratio(r.coverage)],[labels.weightedCoverage,ratio(r.weightedCoverage)],[labels.gap,money(r.gap,c)],[labels.additional,money(r.additional,c)],[labels.opportunities,r.opportunities],[labels.weekly,money(r.weekly,c)]];r.input.stages.forEach(s=>rows.push([labels.stage+' \u2014 '+s.name,money(s.value,c)+' @ '+s.probability+'%']));return {rows,text:[labels.title].concat(rows.map(x=>x[0]+': '+x[1])).join('\\n')}}\n            function csvCell(v){let s=String(v);if(\/^[=+\\-@]\/.test(s))s=\"'\"+s;return '\"'+s.replace(\/\"\/g,'\"\"')+'\"'}\n            async function copy(){if(!current)return;try{const text=lines(current).text;if(navigator.clipboard&&window.isSecureContext)await navigator.clipboard.writeText(text);else{const area=document.createElement('textarea');area.value=text;area.style.position='fixed';area.style.opacity='0';document.body.appendChild(area);area.select();if(!document.execCommand('copy'))throw new Error();area.remove()}message('status','copied')}catch(e){message('status','copyFailed')}}\n            function download(){if(!current)return;const rows=[['Metric','Value']].concat(lines(current).rows),csv='\\uFEFF'+rows.map(r=>r.map(csvCell).join(',')).join('\\r\\n'),blob=new Blob([csv],{type:'text\/csv;charset=utf-8'}),url=URL.createObjectURL(blob),a=document.createElement('a');a.href=url;a.download='sales-pipeline-coverage-plan.csv';document.body.appendChild(a);a.click();a.remove();setTimeout(()=>URL.revokeObjectURL(url),1000);message('status','downloaded')}\n            function reset(){Object.keys(defaults).forEach(k=>fields[k].value=defaults[k]);root.querySelectorAll('[data-stage-row]').forEach((row,i)=>{row.querySelector('[data-stage-name]').value=defaultStages[i][0];row.querySelector('[data-stage-value]').value=defaultStages[i][1];row.querySelector('[data-stage-probability]').value=defaultStages[i][2]});current=null;clear();output.hidden=true;empty.hidden=false;root.querySelector('[data-reset-status]').hidden=false;fields.target.focus()}\n            form.addEventListener('submit',e=>{e.preventDefault();loadLabels();clear();try{current=calculate(read());render(current)}catch(err){current=null;output.hidden=true;empty.hidden=false;message('error',err.message||'invalid')}});\n            root.querySelector('[data-action=\"reset\"]').addEventListener('click',reset);root.querySelector('[data-action=\"copy\"]').addEventListener('click',copy);root.querySelector('[data-action=\"download\"]').addEventListener('click',download);\n        })();\n        <\/script>\n    <\/main>\n    \n","protected":false},"excerpt":{"rendered":"<p>\uac00\uc911 \ud30c\uc774\ud504\ub77c\uc778 \uae08\uc561, \ubaa9\ud45c \ucee4\ubc84\ub9ac\uc9c0, \ub9e4\ucd9c \uaca9\ucc28 \ubc0f \uc601\uc5c5 \ubaa9\ud45c \ub2ec\uc131\uc5d0 \ud544\uc694\ud55c \ucd94\uac00 \uae30\ud68c \uae08\uc561\uc744 \uacc4\uc0b0\ud569\ub2c8\ub2e4.<\/p>","protected":false},"featured_media":9858,"template":"","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"spectra_gs_classes":"[\"\"]"},"tool_categories":[47,32],"class_list":["post-9856","tools","type-tools","status-publish","has-post-thumbnail","hentry","tool_categories-lead-management-tools","tool_categories-sales-tools"],"spectra_custom_meta":{"spectra_gs_classes":["[\"\"]"],"rank_math_internal_links_processed":["1"],"wp_statistics_words_count":["1"],"_thumbnail_id":["9858"],"rank_math_title":["%title% %sep% %sitename%"],"rank_math_description":["%excerpt%"],"rank_math_robots":["a:2:{i:0;s:5:\"index\";i:1;s:6:\"follow\";}"],"rank_math_facebook_image":["https:\/\/tradegoai.app\/wp-content\/uploads\/2026\/07\/sales-pipeline-coverage-calculator-social-share.webp"],"rank_math_facebook_image_id":["9858"],"rank_math_twitter_use_facebook":["on"],"rank_math_twitter_card_type":["summary_large_image"],"rank_math_schema_SoftwareApplication":["a:8:{s:5:\"@type\";s:19:\"SoftwareApplication\";s:4:\"name\";s:34:\"Sales Pipeline Coverage Calculator\";s:11:\"description\";s:139:\"Calculate weighted sales pipeline value, target coverage, revenue gap, and the additional opportunity value needed to support a sales goal.\";s:3:\"url\";s:63:\"https:\/\/tradegoai.app\/tools\/sales-pipeline-coverage-calculator\/\";s:5:\"image\";s:101:\"https:\/\/tradegoai.app\/wp-content\/uploads\/2026\/07\/sales-pipeline-coverage-calculator-social-share.webp\";s:19:\"applicationCategory\";s:19:\"BusinessApplication\";s:15:\"operatingSystem\";s:11:\"Web Browser\";s:6:\"offers\";a:3:{s:5:\"@type\";s:5:\"Offer\";s:5:\"price\";s:1:\"0\";s:13:\"priceCurrency\";s:3:\"USD\";}}"],"astra_style_timestamp_css":["1787210140"],"_uag_page_assets":["a:9:{s:3:\"css\";s:4963:\".uag-blocks-common-selector{z-index:var(--z-index-desktop) !important}@media (max-width: 976px){.uag-blocks-common-selector{z-index:var(--z-index-tablet) !important}}@media (max-width: 767px){.uag-blocks-common-selector{z-index:var(--z-index-mobile) !important}}\n.uagb-icon-list__wrap{display:flex;align-items:flex-start;justify-content:flex-start}.wp-block-uagb-icon-list-child{padding:0;transition:all 0.2s;display:inline-flex;color:#3a3a3a;align-items:center;text-decoration:none;box-shadow:none}.wp-block-uagb-icon-list-child span.uagb-icon-list__source-wrap{display:block;align-items:center}.uagb-icon-list__source-wrap svg{display:block}.uagb-icon-list__source-image{width:40px}.uagb-icon-list__outer-wrap .uagb-icon-list__content-wrap{color:#3a3a3a;display:flex;align-items:center}\n.wp-block-uagb-icon-list-child{position:relative}.wp-block-uagb-icon-list-child>a{position:absolute;top:0;left:0;width:100%;height:100%}img.uagb-icon-list__source-image{max-width:unset}.wp-block-uagb-icon-list-child .uagb-icon-list__label{word-break:break-word}\n.wp-block-uagb-icon-list.uagb-block-b5768981 .uagb-icon-list__source-image{width: 16px;}.wp-block-uagb-icon-list.uagb-block-b5768981 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 16px;height: 16px;font-size: 16px;}.wp-block-uagb-icon-list.uagb-block-b5768981 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{padding: 0px;border-radius: 0px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-b5768981 .wp-block-uagb-icon-list-child .uagb-icon-list__label{text-decoration: !important;font-weight: 600;line-height: em;}.wp-block-uagb-icon-list.uagb-block-b5768981 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;margin-top: 30px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}.wp-block-uagb-icon-list.uagb-block-b5768981 .uagb-icon-list__label{text-align: left;}.wp-block-uagb-icon-list.uagb-block-b5768981 .wp-block-uagb-icon-list-child{text-decoration: !important;font-weight: 600;line-height: em;}.wp-block-uagb-icon-list.uagb-block-b5768981.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 10px;}.wp-block-uagb-icon-list.uagb-block-b5768981 .uagb-icon-list__source-wrap{margin-right: 15px;}.uagb-block-75fa870d.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-75fa870d.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-5bf81fd2.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-5bf81fd2.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}@media only screen and (max-width: 976px) {.wp-block-uagb-icon-list.uagb-block-b5768981 .uagb-icon-list__source-image{width: 16px;}.wp-block-uagb-icon-list.uagb-block-b5768981 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 16px;height: 16px;font-size: 16px;}.wp-block-uagb-icon-list.uagb-block-b5768981 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap {padding: 0px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-b5768981 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;}.wp-block-uagb-icon-list.uagb-block-b5768981 .uagb-icon-list__label{text-align: left;}.wp-block-uagb-icon-list.uagb-block-b5768981.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 10px;}}@media only screen and (max-width: 767px) {.wp-block-uagb-icon-list.uagb-block-b5768981 .uagb-icon-list__source-image{width: 16px;}.wp-block-uagb-icon-list.uagb-block-b5768981 .uagb-icon-list__label{text-align: center;}.wp-block-uagb-icon-list.uagb-block-b5768981 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 16px;height: 16px;font-size: 16px;}.wp-block-uagb-icon-list.uagb-block-b5768981 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{padding: 0px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-b5768981 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: center;-ms-flex-align: center;align-items: center;margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;}.wp-block-uagb-icon-list.uagb-block-b5768981.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 10px;}}\";s:2:\"js\";s:0:\"\";s:18:\"current_block_list\";a:10:{i:0;s:11:\"core\/search\";i:1;s:10:\"core\/group\";i:2;s:12:\"core\/heading\";i:3;s:17:\"core\/latest-posts\";i:4;s:20:\"core\/latest-comments\";i:5;s:13:\"core\/archives\";i:6;s:15:\"core\/categories\";i:7;s:14:\"uagb\/icon-list\";i:8;s:20:\"uagb\/icon-list-child\";i:9;s:14:\"core\/shortcode\";}s:8:\"uag_flag\";b:1;s:11:\"uag_version\";s:10:\"1787709447\";s:6:\"gfonts\";a:0:{}s:10:\"gfonts_url\";s:0:\"\";s:12:\"gfonts_files\";a:0:{}s:14:\"uag_faq_layout\";b:0;}"],"_uag_css_file_name":["uag-css-9856.css"]},"uagb_featured_image_src":{"full":["https:\/\/tradegoai.app\/wp-content\/uploads\/2026\/07\/sales-pipeline-coverage-calculator-social-share.webp",1200,630,false],"thumbnail":["https:\/\/tradegoai.app\/wp-content\/uploads\/2026\/07\/sales-pipeline-coverage-calculator-social-share-150x150.webp",150,150,true],"medium":["https:\/\/tradegoai.app\/wp-content\/uploads\/2026\/07\/sales-pipeline-coverage-calculator-social-share-300x158.webp",300,158,true],"medium_large":["https:\/\/tradegoai.app\/wp-content\/uploads\/2026\/07\/sales-pipeline-coverage-calculator-social-share-768x403.webp",768,403,true],"large":["https:\/\/tradegoai.app\/wp-content\/uploads\/2026\/07\/sales-pipeline-coverage-calculator-social-share-1024x538.webp",1024,538,true],"1536x1536":["https:\/\/tradegoai.app\/wp-content\/uploads\/2026\/07\/sales-pipeline-coverage-calculator-social-share.webp",1200,630,false],"2048x2048":["https:\/\/tradegoai.app\/wp-content\/uploads\/2026\/07\/sales-pipeline-coverage-calculator-social-share.webp",1200,630,false],"trp-custom-language-flag":["https:\/\/tradegoai.app\/wp-content\/uploads\/2026\/07\/sales-pipeline-coverage-calculator-social-share-18x9.webp",18,9,true]},"uagb_author_info":{"display_name":"xiaoxi99202@gmail.com","author_link":"https:\/\/tradegoai.app\/ko\/author\/"},"uagb_comment_info":0,"uagb_excerpt":"Calculate weighted pipeline value, target coverage, revenue gap, and the additional opportunity value needed to support your sales goal.","_links":{"self":[{"href":"https:\/\/tradegoai.app\/ko\/wp-json\/wp\/v2\/tools\/9856","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tradegoai.app\/ko\/wp-json\/wp\/v2\/tools"}],"about":[{"href":"https:\/\/tradegoai.app\/ko\/wp-json\/wp\/v2\/types\/tools"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tradegoai.app\/ko\/wp-json\/wp\/v2\/media\/9858"}],"wp:attachment":[{"href":"https:\/\/tradegoai.app\/ko\/wp-json\/wp\/v2\/media?parent=9856"}],"wp:term":[{"taxonomy":"tool_categories","embeddable":true,"href":"https:\/\/tradegoai.app\/ko\/wp-json\/wp\/v2\/tool_categories?post=9856"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}