fastdtw
Dynamic Time Warping (DTW) algorithm with an O(N) time and memory complexity.
Decision gist · record as of 2026-08-14
Yes, if you need fast approximate DTW for time-series alignment and can accept a stable but unmaintained package. The algorithm is well-established, the code is relatively simple, and there are no known vulnerabilities. Install friction is moderate due to compiled wheels. Suitable for research, prototyping, and production use where DTW is the right tool and you do not require ongoing maintenance.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires numpy; the example in the documentation uses a distance function that may require additional imports.
- Medium install friction due to compiled wheels; last release was 2019-10-07 and the project is marked abandoned, so no active maintenance or security updates should be expected.
License · maintenance · safety
MIT (permissive) — MIT license is permissive; you may use, modify, and distribute fastdtw freely in commercial and private projects with minimal restrictions.
last release 2019-10-07 (2503 days) · last repo commit 2023-05-19 · 851 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 482,686 downloads/mo, #6,421 on PyPI
Alternatives
Verify before relying
pip install fastdtw
import numpy as np
from fastdtw import fastdtw
x = np.array([[1,1], [2,2], [3,3]])
y = np.array([[2,2], [3,3]])
distance, path = fastdtw(x, y, dist=euclidean)- Whether scipy is an undeclared runtime dependency or only an optional import for distance functions.
- Python version compatibility beyond the classifiers (Python 2 and 3 listed, but no requires_python specified).
- Whether the package works reliably with modern numpy versions given the 2019 last release date.
- Exact behavior and accuracy trade-offs of the approximate algorithm relative to standard DTW.
What it is and what it does
fastdtw is a Python implementation of the FastDTW algorithm, an approximate Dynamic Time Warping method that aligns two sequences while maintaining linear time and memory complexity. Unlike standard DTW which has quadratic complexity, fastdtw trades some accuracy for speed, producing optimal or near-optimal alignments suitable for time-series comparison tasks.
The package depends on numpy and accepts sequences as arrays, computing both the alignment distance and the path that maps one sequence to the other. You provide a distance function to measure point-to-point dissimilarity. The project has not been actively maintained since 2019, so it is stable but receives no updates.
Use it for
- Compare time-series data to find similarity despite temporal distortions.
- Align sequences for preprocessing in signal or pattern recognition workflows.
- Match gesture or motion sequences for action recognition tasks.
- Cluster or classify sequences where timing variations exist but overall shape should match.
- Detect anomalies by computing DTW distance between a test sequence and a reference baseline.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need fast approximate DTW for time-series alignment and can accept a stable but unmaintained package.
The algorithm is well-established, the code is relatively simple, and there are no known vulnerabilities. Install friction is moderate due to compiled wheels. Suitable for research, prototyping, and production use where DTW is the right tool and you do not require ongoing maintenance.
Install
fastdtw on PyPI
Before you install
Medium install friction due to compiled wheels; last release was 2019-10-07 and the project is marked abandoned, so no active maintenance or security updates should be expected.
Requires numpy; the example in the documentation uses a distance function that may require additional imports.
License in practice
MIT license is permissive; you may use, modify, and distribute fastdtw freely in commercial and private projects with minimal restrictions.
Quickstart
pip install fastdtw
import numpy as np
from fastdtw import fastdtw
x = np.array([[1,1], [2,2], [3,3]])
y = np.array([[2,2], [3,3]])
distance, path = fastdtw(x, y, dist=euclidean)
Verify before relying
- Whether scipy is an undeclared runtime dependency or only an optional import for distance functions.
- Python version compatibility beyond the classifiers (Python 2 and 3 listed, but no requires_python specified).
- Whether the package works reliably with modern numpy versions given the 2019 last release date.
- Exact behavior and accuracy trade-offs of the approximate algorithm relative to standard DTW.
Package facts
| License | MIT permissive |
| Python support | Not specified |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | 1 packagenumpy |
| Maintenance | Abandoned 2,503 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 482,686 / month, #6,421 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Intended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 2Programming Language :: Python :: 3Topic :: Scientific/Engineering |
Evidence: fastdtw-0.3.4-cp37-cp37m-macosx_10_14_x86_64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “dtw sequence alignment”
- fastdtwfastdtw computes approximate Dynamic Time Warping (DTW) alignments…
- dtw-pythonComputes Dynamic Time Warping alignments between time series,…
- dtaidistanceComputes distance measures between time series using Dynamic Time…
Give your agent the search over MCP, or paste the wish link into any chat.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also dtaidistance · dtw-python · tmtools · textdistance · kaldialign · monotonic-alignment-search · edlib · pyspark-hnsw · editdistance · tslearn