---
title: Apache NiFi Downloads
---

<div class="large-space"></div>
<div class="row">
    <div class="large-12 columns">
        <h1 class="nifi-txt">
            <span>
                Apache <span class="ni">ni</span><span class="fi">fi</span> Downloads
            </span>
        </h1>
    </div>
</div>
<div class="row">
    <div class="large-12 columns">
        <p>To verify the downloads please follow these <a href="https://www.apache.org/info/verification.html">procedures</a>
            using these <a href="https://www.apache.org/dist/nifi/KEYS">KEYS</a></p>
        <p>If a download is not found please allow up to 24 hours for the mirrors to sync.</p>
    </div>
</div>
<div class="row">
    <div class="large-12 columns">
        <h2>Releases</h2>
        <ul>
            <li><h3>1.10.0</h3>
                <ul>
                    <li>Released November 4, 2019</li>
                    <li>
                        Sources:
                        <ul>
                            <li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/1.10.0/nifi-1.10.0-source-release.zip">nifi-1.10.0-source-release.zip</a> [53 MB] ( <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-1.10.0-source-release.zip.asc">asc</a>, <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-1.10.0-source-release.zip.sha256">sha256</a>, <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-1.10.0-source-release.zip.sha512">sha512</a> )</li>
                        </ul>
                    </li>
                    <li>
                        Binaries
                        <ul>
                            <li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/1.10.0/nifi-1.10.0-bin.tar.gz">nifi-1.10.0-bin.tar.gz</a> [1.2 GB] ( <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-1.10.0-bin.tar.gz.asc">asc</a>, <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-1.10.0-bin.tar.gz.sha256">sha256</a>, <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-1.10.0-bin.tar.gz.sha512">sha512</a> )</li>

                            <li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/1.10.0/nifi-1.10.0-bin.zip">nifi-1.10.0-bin.zip</a> [1.2 GB] ( <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-1.10.0-bin.zip.asc">asc</a>, <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-1.10.0-bin.zip.sha256">sha256</a>, <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-1.10.0-bin.zip.sha512">sha512</a> )</li>


                            <li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/1.10.0/nifi-toolkit-1.10.0-bin.tar.gz">nifi-toolkit-1.10.0-bin.tar.gz</a> [42 MB] ( <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-toolkit-1.10.0-bin.tar.gz.asc">asc</a>, <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-toolkit-1.10.0-bin.tar.gz.sha256">sha256</a>, <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-toolkit-1.10.0-bin.tar.gz.sha512">sha512</a> )</li>

                            <li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/1.10.0/nifi-toolkit-1.10.0-bin.zip">nifi-toolkit-1.10.0-bin.zip</a> [42 MB] ( <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-toolkit-1.10.0-bin.zip.asc">asc</a>, <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-toolkit-1.10.0-bin.zip.sha256">sha256</a>, <a href="https://www.apache.org/dist/nifi/1.10.0/nifi-toolkit-1.10.0-bin.zip.sha512">sha512</a> )</li>
                        </ul>
                    </li>
                    <li><a href="https://cwiki.apache.org/confluence/display/NIFI/Release+Notes#ReleaseNotes-Version1.10.0">Release Notes</a></li>
                    <li><a href="https://cwiki.apache.org/confluence/display/NIFI/Migration+Guidance">Migration Guidance</a></li>
                </ul>
            </li>
            <li><h3>1.9.2</h3>
                <ul>
                    <li>Released April 8, 2019</li>
                    <li><strong>Note: The download links pull from archive.apache.org.  Apache limits how much can be downloaded from this site per day so please avoid automated/continuous downloads from the archives</strong></li>
                    <li>
                        Sources:
                        <ul>
                            <li><a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-source-release.zip">nifi-1.9.2-source-release.zip</a> [52 MB] ( <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-source-release.zip.asc">asc</a>, <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-source-release.zip.sha256">sha256</a>, <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-source-release.zip.sha512">sha512</a> )</li>
                        </ul>
                    </li>
                    <li>
                        Binaries
                        <ul>
                            <li><a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-bin.tar.gz">nifi-1.9.2-bin.tar.gz</a> [1.2 GB] ( <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-bin.tar.gz.asc">asc</a>, <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-bin.tar.gz.sha256">sha256</a>, <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-bin.tar.gz.sha512">sha512</a> )</li>

                            <li><a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-bin.zip">nifi-1.9.2-bin.zip</a> [1.2 GB] ( <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-bin.zip.asc">asc</a>, <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-bin.zip.sha256">sha256</a>, <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-bin.zip.sha512">sha512</a> )</li>


                            <li><a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-toolkit-1.9.2-bin.tar.gz">nifi-toolkit-1.9.2-bin.tar.gz</a> [42 MB] ( <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-toolkit-1.9.2-bin.tar.gz.asc">asc</a>, <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-toolkit-1.9.2-bin.tar.gz.sha256">sha256</a>, <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-toolkit-1.9.2-bin.tar.gz.sha512">sha512</a> )</li>

                            <li><a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-toolkit-1.9.2-bin.zip">nifi-toolkit-1.9.2-bin.zip</a> [42 MB] ( <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-toolkit-1.9.2-bin.zip.asc">asc</a>, <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-toolkit-1.9.2-bin.zip.sha256">sha256</a>, <a href="https://archive.apache.org/dist/nifi/1.9.2/nifi-toolkit-1.9.2-bin.zip.sha512">sha512</a> )</li>
                        </ul>
                    </li>
                    <li><a href="https://cwiki.apache.org/confluence/display/NIFI/Release+Notes#ReleaseNotes-Version1.9.2">Release Notes</a></li>
                    <li><a href="https://cwiki.apache.org/confluence/display/NIFI/Migration+Guidance">Migration Guidance</a></li>
                </ul>
            </li>
        </ul>
    </div>
    <div class="row">
        <div class="large-12 columns">
            <h3>Docker images of convenience binaries are hosted on <a href="https://hub.docker.com/">Docker Hub</a></h3>
            <ul>
                <li><a href="https://hub.docker.com/r/apache/nifi/">Apache NiFi Docker Image</a></li>
            </ul>
        </div>
    </div>
<div class="row">
    <div class="large-12 columns">
        <p>If you need access to older releases they can be found in the <a href="https://archive.apache.org/dist/nifi/">release archives</a>. Please note that the link is to archive.apache.org.  Apache limits how much can be downloaded from this site per day so please avoid automated/continuous downloads from the archives.</p>
    </div>
</div>
