XML 30 R115.htm IDEA: XBRL DOCUMENT
v3.19.3.a.u2

Fair Value Measurement - Additional Information (Detail) - Non-Recoverable Rate - Level 3 - Appraisal value | Dec. 31, 2019 | Dec. 31, 2018
--- | --- | ---
Minimum |  |
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |
Loans held for investment, measurement input | 0 | 0
Maximum |  |
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |
Loans held for investment, measurement input | 0.50 | 0.84
Weighted average |  |
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |
Loans held for investment, measurement input | 0.06 | 0.33

X
- Definition Loans held for investment, measurement input + References No definition available. + Details
Name: | cof_LoansHeldforInvestmentMeasurementInput
Namespace Prefix: | cof_
Data Type: | xbrli:decimalItemType
Balance Type: | na
Period Type: | instant

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_MeasurementInputTypeAxis=cof_NonRecoverableRateMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ValuationTechniqueAxis=cof_AppraisalValueMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_WeightedAverageMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |