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

    <schemaVersion>X0201</schemaVersion>

    <documentType>3/A</documentType>

    <periodOfReport>2004-01-28</periodOfReport>

    <dateOfOriginalSubmission>2004-02-04</dateOfOriginalSubmission>

    <noSecuritiesOwned>0</noSecuritiesOwned>

    <issuer>
        <issuerCik>0000856751</issuerCik>
        <issuerName>FIRST KEYSTONE FINANCIAL INC</issuerName>
        <issuerTradingSymbol>FKFS</issuerTradingSymbol>
    </issuer>

    <reportingOwner>
        <reportingOwnerId>
            <rptOwnerCik>0001113932</rptOwnerCik>
            <rptOwnerName>NAESSENS JERRY</rptOwnerName>
        </reportingOwnerId>
        <reportingOwnerAddress>
            <rptOwnerStreet1>1133 HALL ROAD</rptOwnerStreet1>
            <rptOwnerStreet2></rptOwnerStreet2>
            <rptOwnerCity>ROSLYN</rptOwnerCity>
            <rptOwnerState>PA</rptOwnerState>
            <rptOwnerZipCode>19001</rptOwnerZipCode>
            <rptOwnerStateDescription></rptOwnerStateDescription>
        </reportingOwnerAddress>
        <reportingOwnerRelationship>
            <isDirector>0</isDirector>
            <isOfficer>0</isOfficer>
            <isTenPercentOwner>0</isTenPercentOwner>
            <isOther>1</isOther>
            <otherText>director of primary subsidiary</otherText>
        </reportingOwnerRelationship>
    </reportingOwner>

    <nonDerivativeTable>
        <nonDerivativeHolding>
            <securityTitle>
                <value>common stock</value>
            </securityTitle>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>0</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
                <natureOfOwnership>
                    <value></value>
                </natureOfOwnership>
            </ownershipNature>
        </nonDerivativeHolding>
    </nonDerivativeTable>

    <footnotes></footnotes>

    <remarks></remarks>

    <ownerSignature>
        <signatureName>Jerry A. Naessens</signatureName>
        <signatureDate>2004-02-04</signatureDate>
    </ownerSignature>
</ownershipDocument>

