XML 96 R60.htm IDEA: XBRL DOCUMENT v2.4.1.9
Loans - Impaired Loans, Excluding Acquired Loans (Detail) (USD $)
In Millions, unless otherwise specified
3 Months Ended
Mar. 31, 2015
Mar. 31, 2014
Dec. 31, 2014
Impaired Financing Receivable:      
With an Allowance $ 1,442us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment   $ 1,469us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
Without an Allowance 447us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment   445us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
Total Recorded Investment 1,889us-gaap_ImpairedFinancingReceivableRecordedInvestment   1,914us-gaap_ImpairedFinancingReceivableRecordedInvestment
Related Allowance 289us-gaap_ImpairedFinancingReceivableRelatedAllowance   300us-gaap_ImpairedFinancingReceivableRelatedAllowance
Net Recorded Investment 1,600cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance   1,614cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
Unpaid Principal Balance 2,274us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance   2,296us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
Average Recorded Investment 1,901us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment 1,968us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment  
Interest Income Recognized 40cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod 40cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod  
Credit Card      
Impaired Financing Receivable:      
With an Allowance 673us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
  692us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
Without an Allowance 0us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
  0us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
Total Recorded Investment 673us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
  692us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
Related Allowance 210us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
  219us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
Net Recorded Investment 463cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
  473cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
Unpaid Principal Balance 653us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
  672us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
Average Recorded Investment 683us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
765us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
 
Interest Income Recognized 16cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
18cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
 
Credit Card | Domestic      
Impaired Financing Receivable:      
With an Allowance 538us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
  546us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
Without an Allowance 0us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
  0us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
Total Recorded Investment 538us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
  546us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
Related Allowance 143us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
  145us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
Net Recorded Investment 395cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
  401cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
Unpaid Principal Balance 523us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
  531us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
Average Recorded Investment 542us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
596us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
 
Interest Income Recognized 14cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
15cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= country_US
 
Credit Card | International      
Impaired Financing Receivable:      
With an Allowance 135us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
  146us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
Without an Allowance 0us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
  0us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
Total Recorded Investment 135us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
  146us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
Related Allowance 67us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
  74us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
Net Recorded Investment 68cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
  72cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
Unpaid Principal Balance 130us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
  141us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
Average Recorded Investment 141us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
169us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
 
Interest Income Recognized 2cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
3cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= cof_CreditCardPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= cof_InternationalMember
 
Consumer Banking      
Impaired Financing Receivable:      
With an Allowance 514us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
  493us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
Without an Allowance 358us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
  359us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
Total Recorded Investment 872us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
  852us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
Related Allowance 47us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
  42us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
Net Recorded Investment 825cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
  810cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
Unpaid Principal Balance 1,241us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
  1,218us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
Average Recorded Investment 862us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
848us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
 
Interest Income Recognized 22cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
19cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
 
Consumer Banking | Auto      
Impaired Financing Receivable:      
With an Allowance 249us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
  230us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
Without an Allowance 204us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
  205us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
Total Recorded Investment 453us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
  435us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
Related Allowance 22us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
  19us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
Net Recorded Investment 431cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
  416cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
Unpaid Principal Balance 717us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
  694us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
Average Recorded Investment 444us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
363us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
 
Interest Income Recognized 21cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
17cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_AutomobileLoanMember
 
Consumer Banking | Home loan      
Impaired Financing Receivable:      
With an Allowance 219us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
  218us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Without an Allowance 146us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
  149us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Total Recorded Investment 365us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
  367us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Related Allowance 16us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
  17us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Net Recorded Investment 349cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
  350cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Unpaid Principal Balance 467us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
  472us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Average Recorded Investment 366us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
402us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
 
Interest Income Recognized 1cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
1cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
 
Consumer Banking | Retail banking      
Impaired Financing Receivable:      
With an Allowance 46us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
  45us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
Without an Allowance 8us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
  5us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
Total Recorded Investment 54us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
  50us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
Related Allowance 9us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
  6us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
Net Recorded Investment 45cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
  44cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
Unpaid Principal Balance 57us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
  52us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
Average Recorded Investment 52us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
83us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
 
Interest Income Recognized 0cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
1cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_RetailBankingMember
 
Commercial Banking      
Impaired Financing Receivable:      
With an Allowance 255us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
  284us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
Without an Allowance 89us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
  86us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
Total Recorded Investment 344us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
  370us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
Related Allowance 32us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
  39us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
Net Recorded Investment 312cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
  331cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
Unpaid Principal Balance 380us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
  406us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
Average Recorded Investment 356us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
355us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
 
Interest Income Recognized 2cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
3cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
 
Commercial Banking | Total commercial lending      
Impaired Financing Receivable:      
With an Allowance 251us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
  281us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
Without an Allowance 80us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
  81us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
Total Recorded Investment 331us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
  362us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
Related Allowance 32us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
  39us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
Net Recorded Investment 299cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
  323cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
Unpaid Principal Balance 365us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
  396us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
Average Recorded Investment 346us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
348us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
 
Interest Income Recognized 2cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
3cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialLendingMember
 
Commercial Banking | Commercial and multifamily real estate      
Impaired Financing Receivable:      
With an Allowance 107us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
  120us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
Without an Allowance 13us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
  26us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
Total Recorded Investment 120us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
  146us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
Related Allowance 19us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
  23us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
Net Recorded Investment 101cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
  123cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
Unpaid Principal Balance 134us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
  163us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
Average Recorded Investment 133us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
169us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
 
Interest Income Recognized 1cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
2cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndMultifamilyRealEstateMember
 
Commercial Banking | Commercial and industrial      
Impaired Financing Receivable:      
With an Allowance 144us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
  161us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
Without an Allowance 67us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
  55us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
Total Recorded Investment 211us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
  216us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
Related Allowance 13us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
  16us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
Net Recorded Investment 198cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
  200cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
Unpaid Principal Balance 231us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
  233us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
Average Recorded Investment 213us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
179us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
 
Interest Income Recognized 1cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
1cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_CommercialAndIndustrialMember
 
Commercial Banking | Small-ticket commercial real estate      
Impaired Financing Receivable:      
With an Allowance 4us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
  3us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
Without an Allowance 9us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
  5us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
Total Recorded Investment 13us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
  8us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
Related Allowance 0us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
  0us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
Net Recorded Investment 13cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
  8cof_ImpairedFinancingReceivableRecordedInvestmentNetofRelatedAllowance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
Unpaid Principal Balance 15us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
  10us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
Average Recorded Investment 10us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
7us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
 
Interest Income Recognized $ 0cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember
$ 0cof_ImpairedFinancingReceivableInterestIncomeAccrualMethodandCashMethod
/ cof_FinancingReceivablePortfolioSegmentAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= cof_SmallTicketRealEstateMember