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

    <schemaVersion>X0202</schemaVersion>

    <documentType>4</documentType>

    <periodOfReport>2004-11-19</periodOfReport>

    <issuer>
        <issuerCik>0000730255</issuerCik>
        <issuerName>CalAmp Corp.</issuerName>
        <issuerTradingSymbol>CAMP</issuerTradingSymbol>
    </issuer>

    <reportingOwner>
        <reportingOwnerId>
            <rptOwnerCik>0001200933</rptOwnerCik>
            <rptOwnerName>OUSLEY JAMES E</rptOwnerName>
        </reportingOwnerId>
        <reportingOwnerAddress>
            <rptOwnerStreet1>C/O CALAMP CORP.</rptOwnerStreet1>
            <rptOwnerStreet2>1401 N. RICE AVENUE</rptOwnerStreet2>
            <rptOwnerCity>OXNARD</rptOwnerCity>
            <rptOwnerState>CA</rptOwnerState>
            <rptOwnerZipCode>93030</rptOwnerZipCode>
            <rptOwnerStateDescription></rptOwnerStateDescription>
        </reportingOwnerAddress>
        <reportingOwnerRelationship>
            <isDirector>1</isDirector>
            <isOfficer>0</isOfficer>
            <isTenPercentOwner>0</isTenPercentOwner>
            <isOther>0</isOther>
        </reportingOwnerRelationship>
    </reportingOwner>

    <nonDerivativeTable>
        <nonDerivativeTransaction>
            <securityTitle>
                <value>Common Stock</value>
            </securityTitle>
            <transactionDate>
                <value>2004-11-19</value>
            </transactionDate>
            <deemedExecutionDate>
                <value>2004-11-19</value>
            </deemedExecutionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>J</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionAmounts>
                <transactionShares>
                    <value>10970</value>
                    <footnoteId id="F1"/>
                </transactionShares>
                <transactionPricePerShare>
                    <footnoteId id="F5"/>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>D</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>132182</value>
                    <footnoteId id="F2"/>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
                <natureOfOwnership>
                    <value></value>
                </natureOfOwnership>
            </ownershipNature>
        </nonDerivativeTransaction>
        <nonDerivativeTransaction>
            <securityTitle>
                <value>Common Stock</value>
            </securityTitle>
            <transactionDate>
                <value>2004-11-19</value>
            </transactionDate>
            <deemedExecutionDate>
                <value>2004-11-19</value>
            </deemedExecutionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>J</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionAmounts>
                <transactionShares>
                    <value>428</value>
                    <footnoteId id="F3"/>
                </transactionShares>
                <transactionPricePerShare>
                    <footnoteId id="F6"/>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>D</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>5160</value>
                    <footnoteId id="F4"/>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>I</value>
                </directOrIndirectOwnership>
                <natureOfOwnership>
                    <value>By Vytek Management LLC</value>
                </natureOfOwnership>
            </ownershipNature>
        </nonDerivativeTransaction>
    </nonDerivativeTable>

    <footnotes>
        <footnote id="F1">Represents the forfeiture of escrowed shares to CalAmp Corp. pursuant to the Working Capital Adjustment provisions of the merger agreement between CalAmp Corp. and Vytek Corporation dated 12/23/03.</footnote>
        <footnote id="F2">Includes 3,951 shares of common stock held in an escrow account established pursuant to the merger agreement between CalAmp Corp. and Vytek Corporation.</footnote>
        <footnote id="F3">Represents the forfeiture of escrowed shares to CalAmp Corp. pursuant to the Working Capital Adjustment provisions of the merger agreement between CalAmp Corp. and Vytek Corporation dated 12/23/03.</footnote>
        <footnote id="F4">Includes 154 shares of common stock held in an escrow account established pursuant to the merger agreement between CalAmp Corp. and Vytek Corporation.</footnote>
        <footnote id="F5">Price is inapplicable because shares were forfeited from escrow account.</footnote>
        <footnote id="F6">Price is inapplicable because shares were forfeited from escrow account.</footnote>
    </footnotes>

    <remarks></remarks>

    <ownerSignature>
        <signatureName>James E. Ousley by Richard K. Vitelle, attorney-in-fact</signatureName>
        <signatureDate>2004-11-23</signatureDate>
    </ownerSignature>
</ownershipDocument>
[{"type": "4", "sequence": "1", "filename": "edgar.xml", "description": "PRIMARY DOCUMENT", "secsgml_size_bytes": 5939}]
X0202
4
2004-11-19
0000730255
CalAmp Corp.
CAMP
0001200933
OUSLEY JAMES E
C/O CALAMP CORP.
1401 N. RICE AVENUE
OXNARD
CA
93030
1
0
0
0
Common Stock
2004-11-19
2004-11-19
4
J
0
10970
D
132182
D
Common Stock
2004-11-19
2004-11-19
4
J
0
428
D
5160
I
By Vytek Management LLC
Represents the forfeiture of escrowed shares to CalAmp Corp. pursuant to the Working Capital Adjustment provisions of the merger agreement between CalAmp Corp. and Vytek Corporation dated 12/23/03.
Includes 3,951 shares of common stock held in an escrow account established pursuant to the merger agreement between CalAmp Corp. and Vytek Corporation.
Represents the forfeiture of escrowed shares to CalAmp Corp. pursuant to the Working Capital Adjustment provisions of the merger agreement between CalAmp Corp. and Vytek Corporation dated 12/23/03.
Includes 154 shares of common stock held in an escrow account established pursuant to the merger agreement between CalAmp Corp. and Vytek Corporation.
Price is inapplicable because shares were forfeited from escrow account.
Price is inapplicable because shares were forfeited from escrow account.
James E. Ousley by Richard K. Vitelle, attorney-in-fact
2004-11-23