BCC
BCC is a free, Apache-2.0-licensed toolkit for creating kernel tracing and manipulation programs with eBPF.
What BCC is
BCC is a free, Apache-2.0-licensed toolkit for creating kernel tracing and manipulation programs with eBPF. It is designed for Linux and self-hosted use, with performance analysis and network traffic control among its stated applications. BCC provides kernel instrumentation in C, with Python and Lua front ends. Its workflow includes a shared library, an LLVM BPF backend for JIT, and dynamic loading and unloading of JITed programs. Supported kernel hooks include socket filters, tc classifiers, tc actions, and kprobes. The project includes standalone tracing tools with examples for disk I/O, processes, networking, and filesystems. Installation generally requires Linux kernel 4.1 or newer and specified kernel configuration options. Instructions or packages are listed for Debian, Ubuntu, Fedora, Arch, Gentoo, openSUSE, RHEL, Amazon Linux, Alpine Linux, and WSL. The guide cautions that Ubuntu Universe and iovisor BCC packages are outdated, and points to building from source for an up-to-date packaged version. The README describes eBPF programs as sandboxed bytecode executed by the kernel. For help, the project points users to its GitHub issue tracker, IOVisor mailing list, and #iovisor IRC channel.
Good
- Free and Apache-2.0 licensed.
- Provides C instrumentation with Python and Lua front ends.
- Includes tools for disk, process, network, and filesystem tracing.
- Supports several kernel hook types.
- Installation guidance covers multiple Linux distributions and WSL.
Watch out
- Requires Linux kernel 4.1 or newer in general.
- Specified kernel configuration options are required.
- Ubuntu Universe and iovisor BCC packages are outdated.
Who it suits
BCC suits developers and system operators who need Linux kernel tracing or network traffic controls using eBPF. It is a fit for users comfortable with self-hosted tools and the listed kernel and configuration requirements.
Verdict
BCC combines kernel instrumentation, tracing tools, and eBPF hooks in a free Linux toolkit. Check the kernel requirements and package guidance before settling on an installation route.
Plans and prices
From BCC's own pricing page, checked 4 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| BCC | Free | Apache-2.0 licensed · Linux kernel 4.1 or newer required |
The facts
Each one read from BCC's own pages, with the date it was checked.
What it does
- Distribution packages
- The installation guide lists packages or installation instructions for Debian, Ubuntu, Fedora, Arch, Gentoo, openSUSE, RHEL, Amazon Linux, Alpine, and WSL.checked 4 Oct 2026
- Included tools
- The project includes self-contained tools for tracing a running system, including examples for disk I/O, processes, networking, and filesystems.checked 4 Oct 2026
- Kernel hooks
- BCC supports socket filters, tc classifiers, tc actions, and kprobes.checked 4 Oct 2026
- Languages
- BCC provides kernel instrumentation in C, with front ends in Python and Lua.checked 4 Oct 2026
- License
- The repository identifies Apache-2.0 as its license.checked 4 Oct 2026
- Package limitation
- The guide says Ubuntu Universe and iovisor BCC packages are outdated and that building from source is the way to get an up-to-date packaged version.checked 4 Oct 2026
- Permissions
- The FAQ says a BPF program load failure with “Operation not permitted” may require running with sudo.checked 4 Oct 2026
- Purpose
- BCC is a toolkit for creating efficient kernel tracing and manipulation programs using eBPF.checked 4 Oct 2026
- Security model
- The README describes eBPF programs as sandboxed bytecode executed by the kernel and says BPF programs loaded into the kernel cannot crash or run forever.checked 4 Oct 2026
- Support
- The project points users to its GitHub issue tracker, the IOVisor mailing list, and the #iovisor IRC channel for project discussion and help.checked 4 Oct 2026
- Use cases
- BCC is suited to performance analysis and network traffic control.checked 4 Oct 2026
- Workflow
- Its features include a shared library workflow, an LLVM BPF backend for JIT, and dynamic loading and unloading of JITed programs.checked 4 Oct 2026
Where it runs
- Linux requirement
- The installation guide says Linux kernel 4.1 or newer is generally required, along with specified kernel configuration options.checked 4 Oct 2026
Alternatives to BCC
- 1
Coroot
Free planOpen sourceWebAPILinuxSelf-hosted8.2From $1 a month - 2
Kubeshark
Free planOpen sourceWebAPILinuxmacOS8.1From $0.40 a month - 3
Metoro Kubernetes Profiling
Free planWebAPILinuxSelf-hosted7.5From $20 a month - 4

groundcover
Free planWebLinuxSelf-hosted7.1From $30 a month - 5

DeepFlow
Free planAndroidWebAPILinux6.7Free plan - 6
Pyroscope
Free planWebLinuxmacOSWindows6.7From $19 a month
