Sunday, October 25, 2026 4,350 lists 78,100 records on file
List your app or device

  1. Home
  2. Network Protocol Analyzers
  3. Scapy

Scapy

What it is

Scapy is a free Python program and library for manipulating network packets: it can create or decode them, send and capture them, and match requests with replies. It works as either an interactive shell or a library, and supports tasks such as scanning, tracerouting, probing, unit tests and network discovery. Users can set packet field values and combine protocol layers rather than depend on fixed templates. After a probe, Scapy returns decoded packets before interpretation, leaving them available for analysis. It can read and store pcap files and inject invalid frames and custom 802.11 frames. Documentation covers adding protocols and extending Scapy with add-ons, as well as installation, usage, troubleshooting and its API. It runs on Linux, macOS, BSD and Windows; Windows installation requires Npcap. Plotting requires Matplotlib, while TLS decryption and PKI operations require the cryptography package. Scapy's code, tests and tools are licensed under GPL v2, and its documentation under CC BY-NC-SA 2.5.

For and against

For

  • Can be used as a shell or a Python library.
  • Supports pcap reading and storage.
  • Users can set packet fields and stack protocol layers.
  • Online documentation includes installation guides and an API reference.

Against

  • Windows installation requires Npcap.
  • Plotting requires Matplotlib.
  • TLS decryption and PKI operations require cryptography.

The verdict

Scapy is a free option for users who need to shape, send, capture, and inspect network packets with flexibility. Its Windows and optional-feature dependencies are worth checking against your setup.

Who it suits

Scapy suits developers, IT and network professionals, researchers, system administrators, and telecommunications users who need customizable packet manipulation and network probing.

Plans and prices

Scapy

Free

GPLv2 license · Python 3.7+

Every plan, in full

On the record

Audience
Scapy is intended for users who need customizable network probing and packet manipulation tools rather than fixed-purpose utilities.scapy.readthedocs.io · read 2 Oct 2026
Documentation
The project provides online documentation with installation instructions, usage guides, troubleshooting, and an API reference.scapy.readthedocs.io · read 30 Sep 2026
Installation
The latest release can be installed with pip install scapy, and it can also run from the run_scapy or run_scapy.bat scripts without installation.scapy.readthedocs.io · read 2 Oct 2026
Intended audiences
The project metadata lists developers, IT, science and research, system administrators, and telecommunications as intended audiences.github.com · read 30 Sep 2026
Interactive modes
Scapy can be used as an interactive shell or as a library.github.com · read 2 Oct 2026
License
Scapy’s code, tests, and tools are licensed under GPL v2.github.com · read 30 Sep 2026
Licensing
Scapy code, tests and tools are licensed under GPL v2, while its documentation is licensed under CC BY-NC-SA 2.5.github.com · read 2 Oct 2026
Network tasks
The project lists scanning, tracerouting, probing, unit tests, and network discovery among Scapy’s uses.github.com · read 30 Sep 2026
Optional dependencies
Plotting requires Matplotlib, while TLS decryption and PKI operations require the cryptography package.scapy.readthedocs.io · read 30 Sep 2026
Optional integrations
Optional features can use Matplotlib, PyX, Graphviz, ImageMagick, VPython-Jupyter and cryptography.scapy.readthedocs.io · read 2 Oct 2026
Packet flexibility
Users can set arbitrary field values and stack protocol layers without predetermined templates.scapy.readthedocs.io · read 2 Oct 2026
Packet handling
It can forge or decode packets across many protocols, send them, capture them, and match requests with replies.scapy.net · read 2 Oct 2026
Platform support
Scapy runs on Linux, macOS, BSD, and Windows; Windows installation requires Npcap.scapy.readthedocs.io · read 30 Sep 2026
Protocol extensions
The documentation includes instructions for adding new protocols and extending Scapy with add-ons.scapy.readthedocs.io · read 30 Sep 2026
Purpose
Scapy is a Python program for sending, sniffing, dissecting and forging network packets.scapy.readthedocs.io · read 2 Oct 2026
Python DSL
Scapy uses Python syntax and interpreter capabilities as a domain-specific language for describing packets.scapy.readthedocs.io · read 2 Oct 2026
Raw results
After a probe, Scapy returns the full decoded packets before interpretation so users can analyze them in different ways.scapy.readthedocs.io · read 2 Oct 2026
Release
Scapy documentation lists release 2.7.1 dated October 1, 2026.scapy.readthedocs.io · read 2 Oct 2026

Alternatives to Scapy

Every alternative, ranked