XML 132 R84.htm IDEA: XBRL DOCUMENT v2.4.1.9
Cat Financial Financing Activities (Details 5) (Finance Receivables, USD $)
In Millions, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Allowance for credit loss activity:      
Balance at beginning of year $ 375us-gaap_FinancingReceivableAllowanceForCreditLosses $ 423us-gaap_FinancingReceivableAllowanceForCreditLosses $ 366us-gaap_FinancingReceivableAllowanceForCreditLosses
Receivables written off (151)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs (179)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs (149)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
Recoveries on receivables previously written off 47us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery 56us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery 47us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
Provision for credit losses 150us-gaap_ProvisionForLoanLeaseAndOtherLosses 84us-gaap_ProvisionForLoanLeaseAndOtherLosses 160us-gaap_ProvisionForLoanLeaseAndOtherLosses
Other-net (23)cat_FinancingReceivableAllowanceForCreditLossesOtherActivity (9)cat_FinancingReceivableAllowanceForCreditLossesOtherActivity (1)cat_FinancingReceivableAllowanceForCreditLossesOtherActivity
Balance at end of year 398us-gaap_FinancingReceivableAllowanceForCreditLosses 375us-gaap_FinancingReceivableAllowanceForCreditLosses 423us-gaap_FinancingReceivableAllowanceForCreditLosses
Allowance for Credit Losses:      
Individually evaluated for impairment 75us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1 70us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1 54us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
Collectively evaluated for impairment 323us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment 305us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment 369us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
Ending Balance - allowance for credit losses 398us-gaap_FinancingReceivableAllowanceForCreditLosses 375us-gaap_FinancingReceivableAllowanceForCreditLosses 423us-gaap_FinancingReceivableAllowanceForCreditLosses
Recorded Investment in Finance Receivables:      
Individually evaluated for impairment 613us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment 628us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment 593us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
Collectively evaluated for impairment 23,453us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment 23,433us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment 22,715us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
Ending balance-recorded investment in finance receivables 24,066us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome 24,061us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome 23,308us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
Customer
     
Allowance for credit loss activity:      
Balance at beginning of year 365us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
414us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
360us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Receivables written off (151)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
(179)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
(149)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Recoveries on receivables previously written off 47us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
56us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
47us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Provision for credit losses 150us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
83us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
157us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Other-net (23)cat_FinancingReceivableAllowanceForCreditLossesOtherActivity
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
(9)cat_FinancingReceivableAllowanceForCreditLossesOtherActivity
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
(1)cat_FinancingReceivableAllowanceForCreditLossesOtherActivity
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Balance at end of year 388us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
365us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
414us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Allowance for Credit Losses:      
Individually evaluated for impairment 75us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
70us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
54us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Collectively evaluated for impairment 313us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
295us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
360us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Ending Balance - allowance for credit losses 388us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
365us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
414us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Recorded Investment in Finance Receivables:      
Individually evaluated for impairment 613us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
628us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
593us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Collectively evaluated for impairment 19,899us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
19,668us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
18,831us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Ending balance-recorded investment in finance receivables 20,512us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
20,296us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
19,424us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_CustomerMember
Dealer
     
Allowance for credit loss activity:      
Balance at beginning of year 10us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
9us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
6us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
Receivables written off 0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
Recoveries on receivables previously written off 0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
Provision for credit losses 0us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
1us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
3us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
Other-net 0cat_FinancingReceivableAllowanceForCreditLossesOtherActivity
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
0cat_FinancingReceivableAllowanceForCreditLossesOtherActivity
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
0cat_FinancingReceivableAllowanceForCreditLossesOtherActivity
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
Balance at end of year 10us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
10us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
9us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
Allowance for Credit Losses:      
Individually evaluated for impairment 0us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
Collectively evaluated for impairment 10us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
10us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
9us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
Ending Balance - allowance for credit losses 10us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
10us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
9us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
Recorded Investment in Finance Receivables:      
Individually evaluated for impairment 0us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
0us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
0us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
Collectively evaluated for impairment 3,554us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
3,765us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
3,884us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
Ending balance-recorded investment in finance receivables $ 3,554us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
$ 3,765us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember
$ 3,884us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= cat_FinanceReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cat_DealerMember