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

    <schemaVersion>X0306</schemaVersion>

    <documentType>4</documentType>

    <periodOfReport>2019-12-06</periodOfReport>

    <issuer>
        <issuerCik>0000055135</issuerCik>
        <issuerName>KELLY SERVICES INC</issuerName>
        <issuerTradingSymbol>KELYA</issuerTradingSymbol>
    </issuer>

    <reportingOwner>
        <reportingOwnerId>
            <rptOwnerCik>0001391392</rptOwnerCik>
            <rptOwnerName>Corona George S</rptOwnerName>
        </reportingOwnerId>
        <reportingOwnerAddress>
            <rptOwnerStreet1>999 W BIG BEAVER ROAD</rptOwnerStreet1>
            <rptOwnerStreet2></rptOwnerStreet2>
            <rptOwnerCity>TROY</rptOwnerCity>
            <rptOwnerState>MI</rptOwnerState>
            <rptOwnerZipCode>48084</rptOwnerZipCode>
            <rptOwnerStateDescription></rptOwnerStateDescription>
        </reportingOwnerAddress>
        <reportingOwnerRelationship>
            <isDirector>1</isDirector>
        </reportingOwnerRelationship>
    </reportingOwner>

    <nonDerivativeTable>
        <nonDerivativeTransaction>
            <securityTitle>
                <value>Class A Common Stock, Par Value $1</value>
            </securityTitle>
            <transactionDate>
                <value>2019-12-06</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>S</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
                <footnoteId id="F1"/>
            </transactionCoding>
            <transactionTimeliness></transactionTimeliness>
            <transactionAmounts>
                <transactionShares>
                    <value>1100</value>
                </transactionShares>
                <transactionPricePerShare>
                    <value>22.01</value>
                    <footnoteId id="F2"/>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>D</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>146721</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </nonDerivativeTransaction>
        <nonDerivativeTransaction>
            <securityTitle>
                <value>Class A Common Stock, Par Value $1</value>
            </securityTitle>
            <transactionDate>
                <value>2019-12-09</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>S</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
                <footnoteId id="F1"/>
            </transactionCoding>
            <transactionTimeliness></transactionTimeliness>
            <transactionAmounts>
                <transactionShares>
                    <value>20078</value>
                </transactionShares>
                <transactionPricePerShare>
                    <value>22.085</value>
                    <footnoteId id="F3"/>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>D</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>126643</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </nonDerivativeTransaction>
    </nonDerivativeTable>

    <footnotes>
        <footnote id="F1">The sales reported in this Form 4 were made pursuant to a Rule 10b5-1 trading plan executed by the reporting person on November 11, 2019.</footnote>
        <footnote id="F2">1,100 shares were sold at an average price of $22.01 per share. Four individual trades were executed at prices ranging from $22.00 to $22.03 per share.</footnote>
        <footnote id="F3">20,078 shares were sold at an average price of $22.085 per share. Twenty-eight individual trades were executed at prices ranging from $22.0021 to $22.17 per share.</footnote>
    </footnotes>

    <ownerSignature>
        <signatureName>/s/ Deborah M. Emerson, attorney-in-fact for Mr. Corona</signatureName>
        <signatureDate>2019-12-10</signatureDate>
    </ownerSignature>
</ownershipDocument>
