|
| 1 | +--- |
| 2 | +title: Calculating the cost savings of push protection |
| 3 | +shortTitle: Push protection cost savings |
| 4 | +intro: Learn how to use the {% data variables.secret-scanning.roi-calculator %} to estimate the remediation time and labor costs you'll avoid by preventing leaked secrets. |
| 5 | +product: '{% data reusables.gated-features.secret-risk-assessment-calculators %}' |
| 6 | +versions: |
| 7 | + feature: secret-risk-assessment |
| 8 | +permissions: '{% data reusables.permissions.push-protection-roi-calculator %}' |
| 9 | +topics: |
| 10 | + - Secret scanning |
| 11 | + - Secret Protection |
| 12 | +contentType: how-tos |
| 13 | +--- |
| 14 | + |
| 15 | +## What is the cost savings calculator? |
| 16 | + |
| 17 | +You can use the {% data variables.secret-scanning.roi-calculator %} to estimate the cost avoided by preventing leaked secrets with push protection. This information can help you: |
| 18 | + |
| 19 | +* Determine how widely to enable {% data variables.product.prodname_GH_secret_protection %} in your organization. |
| 20 | +* Compare the estimated impact of push protection in different teams or environments. |
| 21 | +* Communicate time and cost implications of rollout decisions to stakeholders. |
| 22 | + |
| 23 | +Push protection is a paid feature which is available with {% data variables.product.prodname_GH_secret_protection %}. For more information, see [AUTOTITLE](/code-security/securing-your-organization/understanding-your-organizations-exposure-to-leaked-secrets/choosing-github-secret-protection). |
| 24 | + |
| 25 | +## Prerequisites |
| 26 | + |
| 27 | +* You need to have generated a secret risk assessment for your organization. See [AUTOTITLE](/code-security/securing-your-organization/understanding-your-organizations-exposure-to-leaked-secrets/viewing-the-secret-risk-assessment-report-for-your-organization). |
| 28 | +* You have realistic values for: |
| 29 | + * Average remediation time per leaked secret (hours) |
| 30 | + * Average annual developer salary (USD) |
| 31 | + |
| 32 | +## Estimating cost savings from push protection |
| 33 | + |
| 34 | +{% data reusables.organizations.navigate-to-org %} |
| 35 | +{% data reusables.organizations.security-overview %} |
| 36 | +{% data reusables.security-overview.open-assessments-view %} |
| 37 | +1. On the top right corner of the banner, click **Get started**. |
| 38 | +1. In the dropdown, select **Estimate push protection savings**. |
| 39 | +1. Review the non-editable value for "Preventable leaks" (P). If 0, a baseline value (such as 70) is shown for modeling purposes. |
| 40 | +1. Enter or adjust the average developer annual compensation (C), in USD. |
| 41 | + * Use blended fully loaded annual compensation (salary + benefits). |
| 42 | + * Keep estimates conservative to avoid overstatement. |
| 43 | +1. Enter or adjust the time to remediate each leaked secret (T), in hours. We recommend you use an average remediation time that reflects steps for revoking, rotating, and validating secrets, as well as notifying your teams or customers: |
| 44 | + * T = 1-1.5 hours for simple rotation, minimal coordination |
| 45 | + * T = 2-3 hours to account for a distributed team or extra checks |
| 46 | + * T = 3-4 hours if you work in a regulated / audited environment |
| 47 | +1. Review the outputs from the **Return on investment** panel: |
| 48 | + * **Secrets prevented**: The number of preventable secrets detected. |
| 49 | + * **Time saved**: Total hours saved by preventing these secrets, based on your input. |
| 50 | + * **Potential savings with push protection**: The total estimated labor cost avoided. |
| 51 | + |
| 52 | +{% note %} |
| 53 | + |
| 54 | +Did you successfully use the {% data variables.secret-scanning.roi-calculator %} to estimate the cost savings of using push protection on your organization? |
| 55 | + |
| 56 | +<a href="https://docs.github.io/success-test/yes.html" target="_blank" class="btn btn-outline mt-3 mr-3 no-underline"><span>Yes</span></a> <a href="https://docs.github.io/success-test/no.html" target="_blank" class="btn btn-outline mt-3 mr-3 no-underline"><span>No</span></a> |
| 57 | + |
| 58 | +{% endnote %} |
| 59 | + |
| 60 | +## Understanding your results |
| 61 | + |
| 62 | +Next, review the results to understand their implications and determine the appropriate scope for rolling out push protection in your organization. Keep the following information in mind as you interpret your results. |
| 63 | + |
| 64 | +The calculator **does**: |
| 65 | +* Estimate savings for **secrets blocked by push protection** only. |
| 66 | +* Base results on your risk assessment and assumptions you provide. |
| 67 | +* Provide estimates based on **labor cost avoidance** only. |
| 68 | +* Provide a modeled baseline for preventable leaks if no secrets were detected in the current scan window. |
| 69 | + |
| 70 | +The calculator does **not**: |
| 71 | +* Include any costs related to data breaches or external impacts. For informational purposes, the cost of a data breach averaged $4.88M in 2024 according to IBM. |
| 72 | +* Include time savings from other {% data variables.product.prodname_GH_secret_protection %} features. |
| 73 | +* Support currencies other than USD. |
| 74 | + |
| 75 | +## Troubleshooting |
| 76 | + |
| 77 | +If you run into problems using the calculator, use the following table to troubleshoot. |
| 78 | + |
| 79 | +| Issue | Action | |
| 80 | +|-------|--------| |
| 81 | +| **Preventable secrets = 0** | When no preventable secrets are detected, the calculator displays a default baseline value (such as 70) for modeling purposes.<br> To replace the baseline with real data, enable push protection on more repositories and allow secret scanning to collect more information. | |
| 82 | +| **Estimated savings shows $5M+** | The calculator is capped at $5M. If your modeled savings exceed this threshold, the value will be displayed as "$5M+" in the UI. To get the precise amount, export your input values (preventable secrets, time to remediate, and developer salary) and replicate the formula in a spreadsheet:</br>`(Secrets prevented) × (Time to remediate) × (Hourly rate)` where hourly rate is calculated as `Salary ÷ 2080`. | |
| 83 | +| **Value seems low** | Review your inputs for time to remediate and average developer compensation. Ensure you have included all steps involved in remediation (such as revoke, rotate, validate, and notify) and that the salary reflects a fully loaded annual cost. | |
| 84 | +| **Value seems high** | Double-check your input values for time to remediate and average compensation to make sure they are realistic and not overstated. Remove any outliers that could be skewing the estimate. | |
| 85 | + |
| 86 | +## Further reading |
| 87 | + |
| 88 | +* [Detecting and Preventing Secret Leaks in Code](https://github.com/resources/whitepapers/secret-scanning-a-key-to-your-cybersecurity-strategy) in {% data variables.product.github %}'s `resources` repository |
0 commit comments