Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

An alternate data stream (ADS) is a named stream of data attached to a file separately from its usual, unnamed contents. On Windows, NTFS names a stream with colon syntax, such as report.txt:notes:$DATA. The ordinary filename refers to the default stream; a named stream can hold different data and may not appear in routine file listings.

How an alternate data stream is named

Microsoft documents a stream path in the form filename:stream name:stream type. In report.txt:notes:$DATA, report.txt is the file, notes is the stream name, and $DATA identifies the data-stream type. The default data stream has an empty name, so its fully specified form is report.txt::$DATA; using report.txt alone refers to that default stream.

A stream is a sequence of bytes. Microsoft’s Win32 documentation describes each stream as having its own allocation size, actual size, and valid data length. Stream-level properties can include compression, encryption, and sparseness. Those properties do not mean every program displays or handles every stream in the same way. Microsoft’s File Streams documentation explains the Win32 model.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How it differs from a file’s usual contents

The default, unnamed data stream holds the file’s familiar contents. A named alternate stream is additional data associated with the same file, not a separate ordinary filename. Microsoft documents that the default and named streams hold different data and can be read or written independently. Its NTFS naming and default-stream rules are described in [MS-FSCC]: NTFS Streams.

Why it may not appear in File Explorer or a basic listing

Many routine file views show the default stream without showing named streams. Microsoft notes that not all applications are written to access alternate streams. In a documented example, the Sysinternals Streams page creates a stream with echo hello > test:stream and reads it with more < test:stream; the file’s displayed size may remain zero in that example. This is Microsoft’s documentation example, not a claim that every application or listing behaves identically. See Microsoft Sysinternals: Streams.

How to inspect named streams

Use the Windows directory command

Microsoft’s NTFS stream specification identifies dir /R as a way to observe named streams from a command line. Run it for the directory you want to inspect; consult the command’s help for the exact syntax applicable to your shell and path.

Use Microsoft Sysinternals Streams

The Streams utility reports stream names and sizes for specified files and directories. Its documented -s option recurses through subdirectories. The utility also documents -d for deleting streams; identify a stream’s purpose before considering deletion, since removing data may be irreversible. Check Microsoft’s current Streams page for supported platforms and current utility details.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Can a directory have an alternate data stream?

Yes. Microsoft protocol documentation says directories can have named alternate data streams. A directory has a default directory stream rather than a default data stream, so the file example should not be read as saying a directory’s default stream is ordinary file contents. The protocol specification describes this behavior in [MS-FSCC]: Alternate Data Streams.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Is an alternate data stream specific to NTFS?

NTFS is the key Windows context for this feature, but Microsoft’s protocol language is broader: a file system may support alternate data streams. That is not a guarantee that every file system supports them or that streams behave the same across file systems. Microsoft’s alternate-stream specification states the capability conditionally.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.