Replies: 6 comments 1 reply
-
|
Unexpected GitHub security charges can definitely be confusing, especially since some features are enabled at the organization level rather than per repository. I’ll break this down in a practical way. Why you’re seeing these charges The charges you listed (Code Security and Secret Protection) are typically related to GitHub Advanced Security (GHAS) features being enabled on one or more repositories within an organization. These features are billed per active committer, not per repository. The “3 licenses” usually means three unique users have pushed commits to repositories where these security features are enabled during the billing period. How to identify what’s generating the charges Find the organization or repositories involved Go to Organization Settings → Billing & plans Open Usage or Security & analysis Check which security features are enabled Go to Settings → Security & analysis Look for: Code scanning Secret scanning Secret scanning push protection Dependency review / Dependabot alerts Identify which users are being billed Organization members External collaborators Bots (in some cases) When and by whom features were enabled Check Organization Settings → Audit log Filter for security_configuration or advanced_security events How to stop or reduce future charges Disable Advanced Security on repositories where it’s not needed: Repo Settings → Security & analysis Limit the number of users who can push to those repos Move sensitive or experimental repos to private projects without GHAS Regularly review billing usage at the start of each billing cycle Important note GitHub Discussions can help explain how billing works, but for a precise repository-level and user-level breakdown, your best option is to contact GitHub Support directly. They can see billing data that isn’t exposed in the UI and can confirm exactly what triggered the charges. |
Beta Was this translation helpful? Give feedback.
-
Explanation of Code Security and Secret Protection ChargesYou’re seeing these charges because GitHub Advanced Security (GHAS) features are enabled on one or more private repositories in your organization. Below are steps to see exactly where the charges come from and how to manage them. 1. Identify which organization or repositories are generating chargesTo see which repositories have Advanced Security enabled:
or:
This page lists every repository currently incurring charges. 2. Identify which features are enabledBilling is triggered when any of the following are enabled on a private repository:
To check per repository:
Each feature will show Enabled or Disabled.
3. Identify which users make up the 3 billable licensesThe “3 licenses” correspond to active committers to repositories with Advanced Security enabled. To see the exact users:
GitHub counts users who:
4. See when features were enabled and by whomUse the Audit log:
Filter for events such as: advanced_security.enable
code_scanning.enable
secret_scanning.enable
secret_scanning_push_protection.enableThis will show:
5. How to disable or limit these features to avoid future chargesDisable per repository
Prevent auto-enabling on new repositories
Restrict via policyYou can restrict which repos or teams can enable Advanced Security.
6. Repository-level and user-level breakdown reportsYou can export CSV reports here:
The report includes:
|
Beta Was this translation helpful? Give feedback.
-
|
Same here, we've been billed for 3 months and yet we do not have advanced security enabled and neither is there anything in the auditlog. |
Beta Was this translation helpful? Give feedback.
-
|
facing same problem any solution |
Beta Was this translation helpful? Give feedback.
-
unexpected github security billing charges - what they usually meanthose line items are coming from GitHub Advanced Security–style features being enabled somewhere you have billing access to. “Code Security” and “Secret Protection” are umbrella SKUs that typically map to things like:
if you’re seeing “3 licenses,” that usually means three active committers in an org where those paid security features are turned on. where the charges come fromgithub always bills at the org / enterprise level, not per-repo line items on the invoice. to track it down: 1) find the org being chargedgo to:
there you’ll see which organization generated the Code Security / Secret Protection charges. if you’re an owner in multiple orgs, check each one. 2) see which repos have security features enabledinside that org:
some orgs enable these org-wide by default. you can also open a specific repo: Repo → Settings → Security & analysis and see exactly what’s toggled. 3) who are the 3 billed users?licenses usually count unique active committers in repos where Advanced Security is enabled during that billing period. check: Org settings → Billing → Usage → GitHub Advanced Security there’s typically a breakdown showing:
not always super granular per repo, but enough to identify suspects. 4) when / by whom it was enabledthis part is trickier. enablement usually comes from:
audit trail lives in: Org settings → Audit log filter for:
that usually tells you who flipped the switch and when. how to stop future chargesyou’ve got a few levers: disable org-wideorg → settings → security & analysis → turn off advanced features. disable per reporepo → settings → security & analysis → turn off the paid ones. limit committerssince billing is per active committer:
important nuancesome security features are free for public repos but paid for private ones. so the usual gotcha is: tl;dr
if the billing UI doesn’t show the detail you’re asking for, that’s when it’s time to open a github support ticket - they can give repo-level breakdowns even if the UI doesn’t expose everything. |
Beta Was this translation helpful? Give feedback.
-
|
Any idea how to solved this issue @github ? :( |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Select Topic Area
Question
Body
I am seeing charges for Code Security (3 licenses – $2.90) and
Secret Protection (3 licenses – $1.84).
I would like detailed clarification on:
Push protection, Dependabot, etc.)
Please provide a repository-level and user-level breakdown of the usage.
Beta Was this translation helpful? Give feedback.
All reactions