Billing FAQ
Last updated: Oct 21, 2026
Why does a former employee appear on the billing list?
These are some possible causes:
- Their commits come into the branch that the platform analyzes at a later time.
- The analyzed branch is not the primary branch, and someone added it to the platform later. Thus, the commits of the branches are different.
- The repository was empty when someone registered it, and later merges added branches with existing commits.
Can Fluid Attacks restrict the number of authors permitted to make commits to a repository?
No. Only the repository administrator can configure repository management policies, and these policies are different on each platform.
Which users have permission to access the monthly author count or list?
Group Managers, Vulnerability Managers (groups), and Users (groups).
Does Fluid Attacks charge an author twice if they commit to repositories in different groups?
No. The developer can make unlimited commits in all the repositories or groups that they want, and Fluid Attacks bills them only one time. If an author contributes to more than one group, Fluid Attacks divides the charge equally among all these groups.
Can Fluid Attacks bill an author twice because of multi-branch support?
Yes.
When you register a repository on more than one branch,
Fluid Attacks bills each branch independently
for the month in which it sees the commits as merged.
Thus, if the same author makes changes
that reach different branches in different months,
Fluid Attacks can bill that author two times.
Does Fluid Attacks charge an author who commits to excluded paths?
No. Fluid Attacks only charges for the authors who contribute to files in paths that are in the testing scope.
How can I count the number of authors in Git repositories?
Fluid Attacks gives a Python script
to count the authors in one or more Git repositories.
The script lists the contributors and their number of commits
in a given date range.
It can also put together the data of more than one subfolder
and normalize identities with a .mailmap file, if necessary.
Script workflow:
- Determines the date range
based on the arguments (
-mor-b). - Gets the relevant commits between the first and the last day of the date range.
- Uses
git-shortlogto count contributions. - Applies the
.mailmapfile to unify aliases or duplicates. - Generates a report sorted by the number of commits.
Check requirements:
Before you run the script, make sure that you have these items:
- Python 3 installed (check by running
python3 --version) - Git installed (check by running
git --version) - A valid
.mailmapfile to unify contributor identities - Local clones of the repositories you want to analyze
Download the script:
Download the script.
Then
save it in your working directory
as scripts/Get_Authors.py.
Run the script:
python3 scripts/Get_Authors.py -m 2023-05 test .mailmapThese are the arguments of the script:
test: The path to the folder that has the repository or repositories..mailmap: The path to the .mailmap file.-m YYYY-MM(optional): Counts the authors in a specific month (for example, 2023-05).-b YYYY-MM-DD YYYY-MM-DD(optional): An alternative to-m YYYY-MMthat specifies a custom date range.-u(optional): Does not count subfolders. By default, the script scans subfolders.
Output example:
Authors of the repositories test between 01 May 2023 and 31 May 2023:
Commits Author
42 Alice <[email protected]>
36 Bob <[email protected]> (NOT IN MAILMAP)
...
Total Authors = 12If the .mailmap file does not have an email,
the script marks it as '(NOT IN MAILMAP)'.
How can I count the lines of code for Health Check?
Fluid Attacks gives a script to count the effective lines of code (LoC) in your repositories. With it, you can verify the cost of Health Check yourself. This script uses tokei and excludes the files that are not relevant to the analysis, such as documentation and styling files.
Analyzed files:
The script runs tokei with the Fluid Attacks language definitions
and excludes these non-code languages:
- Documentation: Markdown
- Styling: CSS, SASS, LESS, Stylus
- Format/config files: JSON, XML, XAML
Check requirements:
Before you run the script, make sure that you have these items:
- Python, version 3 recommended (check by running
python3 --version) - The tokei tool, installed and available in your system path
Use the script:
-
In your terminal, run the script on your project folder:
python3 scripts/Count_LoC.py /path/to/project
Then you see the LoC report, and after it, this message:
Excluded: Markdown,CSS,SASS,LESS,Stylus,JSON,XML,XAML
Using special FLUID ConfigurationThis message means that the script excluded the non-code files and applied the Fluid Attacks standard.
If tokei is not installed or is not in your system path, an error message tells you to install it.
How are lines counted for a late Health Check?
If you have the Advanced plan and request a Health Check later, Fluid Attacks counts the lines per repository. The count starts from the first successful clone that had at least one file other than a 'README' file.
To get the state of the repository at a past date, Fluid Attacks does these steps:
-
Clone the repository:
git clone <repo-url> cd <repo-name> -
Find the latest commit before a specific date:
git rev-list -n 1 --before="2024-03-01 23:59" masterFor example, this command returns the most recent commit hash before March 1, 2024 in the master branch.
-
Go to that commit with
git checkout:git checkout <commit-hash>This puts the repository in 'detached HEAD' mode, which is useful for historical analysis.
How are lines counted for a Health Check after changing plans?
If you need a Health Check when you subscribe again to the Advanced plan, these rules apply:
- If the repository never had a Health Check, Fluid Attacks counts all the lines of code at the moment of the new subscription.
- If the repository had a Health Check, Fluid Attacks counts the lines of the files that changed after the move to the Essential plan.
Integrations FAQ
Get answers to frequently asked questions about Fluid Attacks' API and plugin, especially privacy concerns regarding the features powered by Claude Sonnet.
Glossary
This glossary provides definitions for common application security concepts and terms specific to Fluid Attacks products used in its documentation or elsewhere.