Digital Filter Designer

Digital Filter Designer

Start from a sample rate and desired cutoff or frequency band. The FIR option windows an ideal sinc with a Hamming window; the IIR option cascades one to three identical cookbook biquads. This is a coefficient design and inspection tool: it does not analyze or upload a sound file. Use the plotted, calculated response to check what the chosen design actually does before implementing it elsewhere.

1. Set frequency requirements

All frequencies are in Hz. The cutoff and both band edges must be strictly below half the sample rate (Nyquist).

Hamming-window sinc design. More taps generally narrow the transition, but no ripple or attenuation target is guaranteed.

Set a sample rate and filter requirement, then design.

Comments & questions

Digital Filter Designer

Start from a sample rate and desired cutoff or frequency band. The FIR option windows an ideal sinc with a Hamming window; the IIR option cascades one to three identical cookbook biquads. This is a coefficient design and inspection tool: it does not analyze or upload a sound file. Use the plotted, calculated response to check what the chosen design actually does before implementing it elsewhere.

Key features

  • Four filter shapes with strict Nyquist and ordered-band validation
  • Odd 15–255-tap Hamming-window FIR coefficients normalized at a pass-band reference
  • One to three identical W3C Audio EQ Cookbook biquads with explicit numerator and denominator coefficients
  • Independent 257-point magnitude and wrapped-phase evaluation and 96-sample impulse response
  • Second-order IIR pole stability check and frequency probe values
  • Download standalone response SVG, frequency CSV and complete design JSON

How to use

  1. Choose FIR or IIR and low-pass, high-pass, band-pass or band-stop shape.
  2. Enter a sample rate and a cutoff; for a band filter enter lower and upper edges inside the Nyquist limit.
  3. Choose an odd FIR tap count or an IIR order made by one to three identical biquad sections. Set Q for low- or high-pass IIR.
  4. Press Design and inspect the coefficient table, calculated frequency response and impulse response.
  5. Download the chart SVG, response CSV or coefficient-and-response JSON for review or implementation.

Use cases

  • Sketch an audio low-pass before adding it to a signal-processing application
  • Compare FIR transition width as tap count changes
  • Study how IIR Q and repeated sections change resonance and roll-off
  • Export a reproducible coefficient set with its measured numerical response

Frequently asked questions

Are the cutoff edges guaranteed to be exact?

No. A Hamming FIR has a finite transition band and pass/stop ripple. For band IIR, the geometric center and center divided by edge width define a nominal Q; bilinear warping means the entered edges are not exact 3 dB points. Inspect the calculated response.

What does IIR order mean here?

Orders 2, 4 and 6 are one, two and three copies of the same normalized biquad in cascade, not a maximally-flat Butterworth design of that total order. The exported second-order sections are the implementation form.

How is the FIR gain set?

The odd-length linear-phase FIR is normalized to unity at DC for low-pass and band-stop, at Nyquist for high-pass, and at the geometric band center for band-pass. Other frequencies can differ from unity.

Is the IIR filter stable?

The normalized second-order denominator is checked with strict Jury conditions. The tool reports only designs that pass; changing the coefficients after export can change stability.

Is phase unwrapped?

No. The chart and CSV show principal phase in radians from −π to π. Phase is omitted when the transfer magnitude is below 10⁻⁸ because it is not meaningful there.

Are audio files or settings uploaded?

No audio input is used. Design, graphing and exports run in the browser tab without a server processing request.

Privacy

Design settings and coefficients stay in this browser tab. The requested SVG, CSV and JSON files are generated locally.

References

Related Tools

Audio Spectrum AnalyzerImpulse Response LabAudio DenoiserWasm Module InspectorHreflang Matrix CheckerAST Query PlaygroundContainer Build GraphDependency Graph ExplorerSemver Range LabCron Schedule AuditorPatch Review WorkbenchSource Map ExplorerLocalization Catalog AuditorStructured Data ReviewerHTTP Archive AnalyzerWebhook Signature LabProtobuf Schema WorkbenchGraphQL Schema LabAvro Schema EvolutionLocal SQL WorkbenchSchema Form BuilderMesh Repair WorkbenchPipe Network LabRobot Arm Kinematics LabThermal Network LabBeam Response LabGear Train DesignerTolerance Stackup LabSensor Calibration FitPCB Stackup PlannerNetwork Reachability MapSun Shadow MapGPS Error SimulatorDigital Logic SimulatorAnalog Circuit LabMechanism Linkage LabAnalysis Mesh GeneratorOpenAPI Contract InspectorDatabase Migration PlannerDimensional Equation CheckerTruss Force LabBoolean Minimization LabControl Response LabQueueing Simulation LabGeofence Event SimulatorCoordinate Reference LabSurvey Traverse LabRaster Classification LabChoropleth Design LabMap Print ComposerRaster Reprojection LabElevation Contour MakerTerrain Viewshed LabWatershed DelineatorMap Tile PackagerText File Encoding WorkbenchFilesystem Portability AuditorSBOM License ExplorerFile Signature Auditornpm Lockfile Conflict ResolverSource Secret AuditorOffline Web Package BuilderCertificate Chain InspectorTorrent Metainfo InspectorChunked File PackagerEncrypted File VaultDuplicate File FinderArchive WorkbenchDesign Token ManagerSpacing Token DesignerResponsive Type SystemPackaging Dieline DesignerSVG Icon Sprite PackerFlex Layout PlaygroundCSS Grid PlaygroundRegex Equivalence LabMarkdown Repository AuditorLog Template MinerResponsive Layout AuditorEmail Template PreviewInternal Link GraphState Machine TesterPetri Net SimulatorGit History VisualizerCurl Request WorkbenchBinary Protocol DesignerHex File EditorBinary Patch WorkbenchFile Signature WorkbenchAPI Mock SandboxSchema Column MapperEvent Log SessionizerER Diagram DesignerTime Series Gap AuditorStratified Data SplitterData Lineage DesignerDecision Tree LabData Anonymization WorkbenchData Expectation RunnerJSON Schema ValidatorBasket Pattern AnalyzerRobots Policy TesterSEO HTML AuditorAccessibility Structure AuditorSyndication Feed WorkbenchIndexNow Payload BuilderCrawl Log AnalyzerCSP Policy WorkbenchSearch Performance AnalyzerCSV Formula Risk AuditorCORS Response SimulatorCache Header LabCookie Policy InspectorWeb Vitals Trace LabSitemap Health AuditorBatch File RenamerFile Manifest VerifierFolder Space MapFolder Difference ReviewerRoute Order OptimizerGeoJSON Map EditorPolygon Overlay LabCartographic Label PlacerSpatial Table JoinGeoJSON Topology AuditorGPX Track AnalyzerTrack Privacy RedactorCSV Table JoinCSV Pivot WorkbenchScientific Data ProfilerTabular Cleaning WorkbenchRecord ReconciliationData Dictionary BuilderCanonical Graph AuditorRedirect Plan TesterHTTP response and ping reference testBrowser and System InformationJSON ↔ YAML ConverterXML ↔ JSON ConverterHTML FormatterJavaScript MinifierMock Data Generator.gitignore GeneratorLicense GeneratorUser-Agent ParserPassword Strength CheckerCode to ImageXML FormatterHTTP Status Code LookupMIME Type LookupJS & SQL String EscapeCSS Box Shadow GeneratorCSS Gradient GeneratorIndent ConverterNumber Base ConverterUnicode Escape ConverterUnicode InspectorJSON Structure DiffMarkdown Table GeneratorBase64 EncoderJSON FormatterURL EncoderSQL FormatterCron Expression GeneratorRegex TesterUUID GeneratorHash GeneratorTimestamp ConverterJWT DecoderHTML Entity ConverterMarkdown PreviewCSS MinifierMeta Tag GeneratorJSON ↔ CSVCase ConverterImage to Base64
Explore all Dev Tools tools →Image/Media →Text/Convert →Life/Fun →