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

    <schemaVersion>X0306</schemaVersion>

    <documentType>4</documentType>

    <periodOfReport>2016-12-31</periodOfReport>

    <notSubjectToSection16>0</notSubjectToSection16>

    <issuer>
        <issuerCik>0000731012</issuerCik>
        <issuerName>HEALTHCARE SERVICES GROUP INC</issuerName>
        <issuerTradingSymbol>HCSG</issuerTradingSymbol>
    </issuer>

    <reportingOwner>
        <reportingOwnerId>
            <rptOwnerCik>0001454244</rptOwnerCik>
            <rptOwnerName>WAHL Theodore</rptOwnerName>
        </reportingOwnerId>
        <reportingOwnerAddress>
            <rptOwnerStreet1>3220 TILLMAN DRIVE</rptOwnerStreet1>
            <rptOwnerStreet2>SUITE 300</rptOwnerStreet2>
            <rptOwnerCity>BENSALEM</rptOwnerCity>
            <rptOwnerState>PA</rptOwnerState>
            <rptOwnerZipCode>19020</rptOwnerZipCode>
            <rptOwnerStateDescription></rptOwnerStateDescription>
        </reportingOwnerAddress>
        <reportingOwnerRelationship>
            <isDirector>1</isDirector>
            <isOfficer>1</isOfficer>
            <isTenPercentOwner>0</isTenPercentOwner>
            <isOther>0</isOther>
            <officerTitle>President &amp; CEO</officerTitle>
            <otherText></otherText>
        </reportingOwnerRelationship>
    </reportingOwner>

    <nonDerivativeTable>
        <nonDerivativeTransaction>
            <securityTitle>
                <value>Common Stock</value>
            </securityTitle>
            <transactionDate>
                <value>2016-12-31</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>A</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionAmounts>
                <transactionShares>
                    <value>715</value>
                    <footnoteId id="F1"/>
                </transactionShares>
                <transactionPricePerShare>
                    <value>29.64</value>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>A</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>110111</value>
                    <footnoteId id="F2"/>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </nonDerivativeTransaction>
        <nonDerivativeHolding>
            <securityTitle>
                <value>Common Stock</value>
            </securityTitle>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>84536</value>
                    <footnoteId id="F2"/>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>I</value>
                </directOrIndirectOwnership>
                <natureOfOwnership>
                    <value>Held by spouse</value>
                </natureOfOwnership>
            </ownershipNature>
        </nonDerivativeHolding>
        <nonDerivativeHolding>
            <securityTitle>
                <value>Common Stock</value>
            </securityTitle>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>28418</value>
                    <footnoteId id="F2"/>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>I</value>
                </directOrIndirectOwnership>
                <natureOfOwnership>
                    <value>Held by minor child</value>
                </natureOfOwnership>
            </ownershipNature>
        </nonDerivativeHolding>
    </nonDerivativeTable>

    <derivativeTable>
        <derivativeTransaction>
            <securityTitle>
                <value>Stock Option (right to buy)</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>39.38</value>
            </conversionOrExercisePrice>
            <transactionDate>
                <value>2017-01-04</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>A</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionAmounts>
                <transactionShares>
                    <value>30000</value>
                </transactionShares>
                <transactionPricePerShare>
                    <value>0</value>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>A</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <exerciseDate>
                <value>2022-01-04</value>
                <footnoteId id="F3"/>
            </exerciseDate>
            <expirationDate>
                <value>2027-01-04</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>30000.0</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>30000</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeTransaction>
        <derivativeTransaction>
            <securityTitle>
                <value>Restricted Stock Units</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <footnoteId id="F4"/>
            </conversionOrExercisePrice>
            <transactionDate>
                <value>2017-01-04</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>A</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionAmounts>
                <transactionShares>
                    <value>30000</value>
                </transactionShares>
                <transactionPricePerShare>
                    <value>0</value>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>A</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <exerciseDate>
                <value>2022-01-04</value>
                <footnoteId id="F5"/>
            </exerciseDate>
            <expirationDate>
                <footnoteId id="F5"/>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>30000.0</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>30000</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeTransaction>
        <derivativeTransaction>
            <securityTitle>
                <value>Phantom Stock</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <footnoteId id="F4"/>
            </conversionOrExercisePrice>
            <transactionDate>
                <value>2016-12-31</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>A</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionAmounts>
                <transactionShares>
                    <value>963</value>
                    <footnoteId id="F6"/>
                </transactionShares>
                <transactionPricePerShare>
                    <value>39.17</value>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>A</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <exerciseDate>
                <value>2016-12-31</value>
            </exerciseDate>
            <expirationDate>
                <footnoteId id="F7"/>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>963.0</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>963</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeTransaction>
    </derivativeTable>

    <footnotes>
        <footnote id="F1">Acquired by the Reporting Person through participation in the Healthcare Services Group, Inc. Employee Stock Purchase Plan</footnote>
        <footnote id="F2">Total Direct and Indirect Beneficial Ownership by Reporting Person is 223,065 shares.</footnote>
        <footnote id="F3">These options shall vest and become exercisable at the rate of 20% annually, commencing on the first anniversary of the January 4, 2017 grant date.</footnote>
        <footnote id="F4">Shares issued at the conversion rate of 1-for-1.</footnote>
        <footnote id="F5">These Restricted Stock Units shall vest and become exercisable at the rate of 20% annually, commencing on the first anniversary of the January 4, 2017 grant date.</footnote>
        <footnote id="F6">Acquired pursuant to an Issuer contribution under the Healthcare Services Group, Inc. Deferred Compensation Plan.</footnote>
        <footnote id="F7">Shares of Phantom Stock are payable in-kind following termination of the Reporting Person's employment with Issuer.</footnote>
    </footnotes>

    <remarks></remarks>

    <ownerSignature>
        <signatureName>/s/ John C. Shea, by Power of Attorney</signatureName>
        <signatureDate>2017-01-04</signatureDate>
    </ownerSignature>
</ownershipDocument>
[{"type": "4", "sequence": "1", "filename": "wf-form4_148357986321951.xml", "description": "FORM 4", "secsgml_size_bytes": 11814}]
X0306
4
2016-12-31
0
0000731012
HEALTHCARE SERVICES GROUP INC
HCSG
0001454244
WAHL Theodore
3220 TILLMAN DRIVE
SUITE 300
BENSALEM
PA
19020
1
1
0
0
President & CEO
Common Stock
2016-12-31
4
A
0
715
29.64
A
110111
D
Common Stock
84536
I
Held by spouse
Common Stock
28418
I
Held by minor child
Stock Option (right to buy)
39.38
2017-01-04
4
A
0
30000
0
A
2022-01-04
2027-01-04
Common Stock
30000.0
30000
D
Restricted Stock Units
2017-01-04
4
A
0
30000
0
A
2022-01-04
Common Stock
30000.0
30000
D
Phantom Stock
2016-12-31
4
A
0
963
39.17
A
2016-12-31
Common Stock
963.0
963
D
Acquired by the Reporting Person through participation in the Healthcare Services Group, Inc. Employee Stock Purchase Plan
Total Direct and Indirect Beneficial Ownership by Reporting Person is 223,065 shares.
These options shall vest and become exercisable at the rate of 20% annually, commencing on the first anniversary of the January 4, 2017 grant date.
Shares issued at the conversion rate of 1-for-1.
These Restricted Stock Units shall vest and become exercisable at the rate of 20% annually, commencing on the first anniversary of the January 4, 2017 grant date.
Acquired pursuant to an Issuer contribution under the Healthcare Services Group, Inc. Deferred Compensation Plan.
Shares of Phantom Stock are payable in-kind following termination of the Reporting Person's employment with Issuer.
/s/ John C. Shea, by Power of Attorney
2017-01-04