The Canadian Encyclopedia — neutral, cited, updated
July 26, 2026Sources cited
Canadianwire.
Canada’s encyclopedia & explainer
HomeTechnology & InternetSoftwareFilter
Technology & Internet • Software

Filter

In software, a filter is a program or component that processes data and passes along only the items that match specified criteria.

By Ethan Anderson| Reviewed by Olivia Bennett, Standards & Fact-Checking Lead| Updated July 26, 2026|2 min read| Fact-checked

In software, a filter is a program or component that processes data and passes along only the items that match specified criteria. Filters are commonly used in pipelines, where the output of one program becomes the input of another, and in content, network, and data-processing systems. The term also has a broader technical meaning in computing as any function that transforms or screens input into output.

Definition

A filter in software is a program or subroutine that receives data, applies rules or transformations, and outputs a resulting stream. The term is used broadly across computing, including data processing and Unix-style command-line tools. A software filter processes a stream of input and produces another stream as output.

Unix and pipeline usage

In Unix and Unix-like operating systems, a filter usually reads from standard input and writes to standard output, making it easy to combine multiple filters in a pipeline. This design allows complex processing to be built from small, focused programs. Filters are often chained together to form pipelines.

Filtering technologies

Government material on content filtering describes a layered model with core technologies and application-layer tools. Examples include blacklists and whitelists, automatic text analysis, access authority control, proxy software, special-purpose browsers, and access-control applications. Core filtering technologies can include URL lists, automatic text analysis, access control, and activity tracing.

The word filter is also used in specialized software for tasks such as data filtering, web filtering, and electronic filter design. In these contexts, the program screens, selects, or transforms data according to defined rules.

Key facts

  • A software filter processes a stream of input and produces another stream as output.
  • In Unix-like systems, filters typically read from standard input and write to standard output.
  • Filters are often chained together to form pipelines.
🍁
Canadian context

Canadian government material on content filtering technologies describes how filtering is used in internet access control and related applications, making the concept relevant to Canadian policy, education, and network-management contexts.[6]

Frequently asked questions

What is a filter in software?
A filter is a program or component that processes input and produces output after applying rules, selecting only data that meets certain criteria.
How are software filters used in Unix?
Unix filters commonly read from standard input and write to standard output, which makes them easy to connect in a pipeline.
What is a pipeline?
A pipeline is a sequence of programs where the output of one becomes the input of the next. Filters are often used as the building blocks of pipelines.
What kinds of filtering technologies exist?
Examples include URL blacklists and whitelists, automatic text analysis, access control, proxy software, special-purpose browsers, and activity monitors.
Is a data filter the same as a web filter?
They use the same general idea but serve different purposes: data filters select or transform records, while web filters control access to websites or online content.

References

  1. Wikipediahttps://en.wikipedia.org/wiki/Filter_(software)
    Supports: Defines a software filter as a program or subroutine that processes a stream and notes Unix standard input/output usage and pipelines.
  2. Government of Canadahttps://publications.gc.ca/collections/collection_2021/isde-ised/iu64/Iu64-93-2000-eng.pdf
    Supports: Describes content filtering technologies, core technologies, and application-layer filtering tools.
  3. OMICRON Labhttps://www.omicron-lab.com/products/vector-network-analysis/quickfil
    Supports: Shows a software tool for designing passive electronic filters, illustrating another specialized use of the term.
  4. MathWorkshttps://www.mathworks.com/help/dsp/ref/filterdesigner.html
    Supports: Documents a filter design application used to design, analyze, and modify filters.
  5. Microwaves & RFhttps://www.mwrf.com/technologies/embedded/software/article/21844585/searching-through-software-for-a-filter
    Supports: Provides examples of filter design software and related filter types across analog and digital domains.