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

    <schemaVersion>X0202</schemaVersion>

    <documentType>4</documentType>

    <periodOfReport>2004-07-21</periodOfReport>

    <issuer>
        <issuerCik>0000912365</issuerCik>
        <issuerName>KFX INC</issuerName>
        <issuerTradingSymbol>KFX</issuerTradingSymbol>
    </issuer>

    <reportingOwner>
        <reportingOwnerId>
            <rptOwnerCik>0001235465</rptOwnerCik>
            <rptOwnerName>SPENCER RICHARD S III</rptOwnerName>
        </reportingOwnerId>
        <reportingOwnerAddress>
            <rptOwnerStreet1>200 SEVENTH AVENUE, SUITE 105</rptOwnerStreet1>
            <rptOwnerStreet2></rptOwnerStreet2>
            <rptOwnerCity>SANTA CRUZ</rptOwnerCity>
            <rptOwnerState>CA</rptOwnerState>
            <rptOwnerZipCode>95062</rptOwnerZipCode>
            <rptOwnerStateDescription></rptOwnerStateDescription>
        </reportingOwnerAddress>
        <reportingOwnerRelationship>
            <isDirector>1</isDirector>
            <isOfficer>0</isOfficer>
            <isTenPercentOwner>1</isTenPercentOwner>
            <isOther>0</isOther>
        </reportingOwnerRelationship>
    </reportingOwner>

    <derivativeTable>
        <derivativeTransaction>
            <securityTitle>
                <value>Director Stock Option (Right to Buy)</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>8.20</value>
            </conversionOrExercisePrice>
            <transactionDate>
                <value>2004-07-21</value>
                <footnoteId id="F1"/>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>A</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionAmounts>
                <transactionShares>
                    <value>30000</value>
                </transactionShares>
                <transactionPricePerShare>
                    <footnoteId id="F1"/>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>A</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <exerciseDate>
                <value>2004-06-25</value>
                <footnoteId id="F1"/>
            </exerciseDate>
            <expirationDate>
                <value>2011-06-24</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>30000</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>30000</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
                <natureOfOwnership>
                    <value></value>
                </natureOfOwnership>
            </ownershipNature>
        </derivativeTransaction>
    </derivativeTable>

    <footnotes>
        <footnote id="F1">A committee of the issuer's Board of Directors voted on June 25, 2004 to grant the options reported in this Form 4 to the Reporting Person and determined the exercise price at that time.  The reporting person did not receive formal notice of or documentation relating to the grant, and did not enter into the related option agreement, until July 21, 2004.  Despite the fact that the reporting person did not enter into the option agreement until the later date, the agreement states that the agreement became effective as of June 25 2004 and that the options were exercisable immediately.</footnote>
    </footnotes>

    <remarks></remarks>

    <ownerSignature>
        <signatureName>Richard S. Spencer III</signatureName>
        <signatureDate>2004-07-23</signatureDate>
    </ownerSignature>
</ownershipDocument>

