<?xml version="1.0"?>
<ownershipDocument>

    <schemaVersion>X0202</schemaVersion>

    <documentType>4</documentType>

    <periodOfReport>2004-12-09</periodOfReport>

    <notSubjectToSection16>0</notSubjectToSection16>

    <issuer>
        <issuerCik>0000031462</issuerCik>
        <issuerName>ECOLAB INC</issuerName>
        <issuerTradingSymbol>ECL</issuerTradingSymbol>
    </issuer>

    <reportingOwner>
        <reportingOwnerId>
            <rptOwnerCik>0001229313</rptOwnerCik>
            <rptOwnerName>NEWLIN STEPHEN D</rptOwnerName>
        </reportingOwnerId>
        <reportingOwnerAddress>
            <rptOwnerStreet1>ECOLAB INC.</rptOwnerStreet1>
            <rptOwnerStreet2>ECOLAB CENTER 370 N. WABASHA STREET</rptOwnerStreet2>
            <rptOwnerCity>ST. PAUL</rptOwnerCity>
            <rptOwnerState>MN</rptOwnerState>
            <rptOwnerZipCode>55102</rptOwnerZipCode>
            <rptOwnerStateDescription></rptOwnerStateDescription>
        </reportingOwnerAddress>
        <reportingOwnerRelationship>
            <isDirector>0</isDirector>
            <isOfficer>1</isOfficer>
            <isTenPercentOwner>0</isTenPercentOwner>
            <isOther>0</isOther>
            <officerTitle>President - Industrial Sector</officerTitle>
            <otherText></otherText>
        </reportingOwnerRelationship>
    </reportingOwner>

    <nonDerivativeTable>
        <nonDerivativeHolding>
            <securityTitle>
                <value>Common Stock</value>
            </securityTitle>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>1000</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </nonDerivativeHolding>
        <nonDerivativeHolding>
            <securityTitle>
                <value>Common Stock</value>
            </securityTitle>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>141.538</value>
                    <footnoteId id="F1"/>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>I</value>
                </directOrIndirectOwnership>
                <natureOfOwnership>
                    <value>By Ecolab Savings Plan</value>
                </natureOfOwnership>
            </ownershipNature>
        </nonDerivativeHolding>
    </nonDerivativeTable>

    <derivativeTable>
        <derivativeTransaction>
            <securityTitle>
                <value>Employee Stock Option (Right to Buy)</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>34.50</value>
            </conversionOrExercisePrice>
            <transactionDate>
                <value>2004-12-09</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>A</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionAmounts>
                <transactionShares>
                    <value>54100</value>
                </transactionShares>
                <transactionPricePerShare>
                    <value>0.00</value>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>A</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <exerciseDate>
                <value>2005-12-09</value>
                <footnoteId id="F2"/>
            </exerciseDate>
            <expirationDate>
                <value>2014-12-09</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>54100</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>54100</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeTransaction>
    </derivativeTable>

    <footnotes>
        <footnote id="F1">Number of UNITS in the Ecolab Stock Fund of the Ecolab Savings Plan (401(k) Plan) as of Ocotober 31, 2004.  Includes 49.365 UNITS acquired since the reporting person's last report.  (The 141.538 UNITS are the equivalent of approximtely 256.558 shares of the issuer's Common Stock.)</footnote>
        <footnote id="F2">The option will be exercisable, on a cumulative basis, as to one-third of the option shares (excluding any fractional portion less than one share), on each of the first and second anniversaries of the date of grant and as to the remaining shares on the third anniversary of the date of grant; provided, however, that if a Change in Control (as that term is defined in the 2002 Ecolab Inc. Stock Incentive Plan) will occur, then the option, if it has been outstanding for at least six months from the date of grant, will become immediately exercisable in full.</footnote>
    </footnotes>

    <ownerSignature>
        <signatureName>/s/ David F. Duvick, Attorney-in-Fact for Stephen D. Newlin</signatureName>
        <signatureDate>2004-12-10</signatureDate>
    </ownerSignature>
</ownershipDocument>

