XML 138 R179.htm IDEA: XBRL DOCUMENT v2.4.1.9
PLEDGED ASSETS, COLLATERAL, GUARANTEES AND COMMITMENTS - Gurantees (Details) (USD $)
12 Months Ended
Dec. 31, 2014
trust
Dec. 31, 2013
trust
Maximum potential amount of future payments    
Expire Within One Year $ 258,500,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear $ 207,500,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
Expire After One Year 206,100,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear 174,500,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
Total amount outstanding 464,600,000,000us-gaap_GuaranteeObligationsMaximumExposure 382,000,000,000us-gaap_GuaranteeObligationsMaximumExposure
Carrying value 3,146,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue 1,343,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue
Compensation for standard representations and warranties 0c_CompensationReceivedForStandardRepresentationsAndWarranties  
Stated or notional amounts included in the indemnification clauses 0c_StatedOrNotionalAmountsIncludedInIndemnificationClauses  
Liability related to VTNs 0c_ValueTransferNetworksLiability 0c_ValueTransferNetworksLiability
Number of trusts funded by the reinsurer 2c_NumberOfTrustFundedByReinsurer 2c_NumberOfTrustFundedByReinsurer
Fair value of securities in trusts funded by reinsurer relating to indemnification 6,200,000,000c_FairValueOfTrustsFundedByInsurer 5,400,000,000c_FairValueOfTrustsFundedByInsurer
Liability related to long-term care insurance indemnification 0c_LongTermCareInsuranceIndemnificationLiability 0c_LongTermCareInsuranceIndemnificationLiability
Cash collateral available to reimburse losses realized under guarantees and indemnifications 63,000,000,000c_CashHeldAsCollateral 52,000,000,000c_CashHeldAsCollateral
Securities and other marketable assets held as collateral, the majority of which collateral is held to reimburse losses realized under securities lending indemnifications 70,000,000,000us-gaap_SecuritiesReceivedAsCollateral 39,000,000,000us-gaap_SecuritiesReceivedAsCollateral
Letters of credit in favor of the Company held as collateral 4,000,000,000c_LettersOfCreditReceivedAsCollateral 5,300,000,000c_LettersOfCreditReceivedAsCollateral
Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 129,100,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
119,800,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
Non-Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 19,900,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
18,500,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
Not rated    
Maximum potential amount of future payments    
Total amount outstanding 315,600,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
243,700,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
Financial standby letters of credit    
Maximum potential amount of future payments    
Expire Within One Year 25,400,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
28,800,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Expire After One Year 73,000,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
71,400,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Total amount outstanding 98,400,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
100,200,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Carrying value 242,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
429,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Financial standby letters of credit | Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 73,000,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
76,200,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Financial standby letters of credit | Non-Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 15,900,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
14,800,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Financial standby letters of credit | Not rated    
Maximum potential amount of future payments    
Total amount outstanding 9,500,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
9,200,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Performance guarantees    
Maximum potential amount of future payments    
Expire Within One Year 7,100,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
7,600,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
Expire After One Year 4,800,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
4,900,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
Total amount outstanding 11,900,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
12,500,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
Carrying value 29,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
42,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
Performance guarantees | Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 7,300,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
7,400,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
Performance guarantees | Non-Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 3,900,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
3,600,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
Performance guarantees | Not rated    
Maximum potential amount of future payments    
Total amount outstanding 700,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
1,500,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= us-gaap_PerformanceGuaranteeMember
Derivative instruments considered to be guarantees    
Maximum potential amount of future payments    
Expire Within One Year 12,500,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
6,000,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
Expire After One Year 79,200,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
61,600,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
Total amount outstanding 91,700,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
67,600,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
Carrying value 2,806,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
797,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
Derivative instruments considered to be guarantees | Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
Derivative instruments considered to be guarantees | Non-Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
Derivative instruments considered to be guarantees | Not rated    
Maximum potential amount of future payments    
Total amount outstanding 91,700,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
67,600,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_DerivativeInstrumentsConsideredGuaranteesMember
Loans sold with recourse    
Maximum potential amount of future payments    
Expire Within One Year 0c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
0c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
Expire After One Year 200,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
300,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
Total amount outstanding 200,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
300,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
Carrying value 15,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
22,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
Repurchase reserve for Consumer mortgages representations and warranties 224,000,000c_RepurchaseReserveConsumerMortgagesRepresentationsAndWarranties
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
341,000,000c_RepurchaseReserveConsumerMortgagesRepresentationsAndWarranties
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
Loans sold with recourse | Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
Loans sold with recourse | Non-Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
Loans sold with recourse | Not rated    
Maximum potential amount of future payments    
Total amount outstanding 200,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
300,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_LoansSoldWithRecourseMember
Securities lending indemnifications    
Maximum potential amount of future payments    
Expire Within One Year 127,500,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
79,200,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
Expire After One Year 0c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
0c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
Total amount outstanding 127,500,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
79,200,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
Carrying value 0us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
0us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
Securities lending indemnifications | Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
Securities lending indemnifications | Non-Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
Securities lending indemnifications | Not rated    
Maximum potential amount of future payments    
Total amount outstanding 127,500,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
79,200,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_SecuritiesLendingIndemnificationsMember
Credit card merchant processing    
Maximum potential amount of future payments    
Expire Within One Year 86,000,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
85,900,000,000c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
Expire After One Year 0c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
0c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
Total amount outstanding 86,000,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
85,900,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
Carrying value 0us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
0us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
Maximum potential contingent liability related to bankcard and private-label merchant processing services 86,000,000,000c_BankcardAndPrivateLabelMerchantProcessingServicesMaximumPotentialContingentLiability
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
86,000,000,000c_BankcardAndPrivateLabelMerchantProcessingServicesMaximumPotentialContingentLiability
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
Credit card merchant processing | Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
Credit card merchant processing | Non-Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
Credit card merchant processing | Not rated    
Maximum potential amount of future payments    
Total amount outstanding 86,000,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
85,900,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CreditCardMerchantProcessingMember
Custody indemnifications and other    
Maximum potential amount of future payments    
Expire Within One Year 0c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
0c_GuaranteeObligationsMaximumExposureExpireWithinOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
Expire After One Year 48,900,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
36,300,000,000c_GuaranteeObligationsMaximumExposureExpireAfterOneYear
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
Total amount outstanding 48,900,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
36,300,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
Carrying value 54,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
53,000,000us-gaap_GuaranteeObligationsCurrentCarryingValue
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
Custody indemnifications and other | Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 48,800,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
36,200,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
Custody indemnifications and other | Non-Investment Grade    
Maximum potential amount of future payments    
Total amount outstanding 100,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
100,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= us-gaap_ExternalCreditRatingNonInvestmentGradeMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
Custody indemnifications and other | Not rated    
Maximum potential amount of future payments    
Total amount outstanding 0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
0us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_ExternalCreditRatingByGroupingAxis
= c_ExternalCreditRatingNotRatedMember
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_CustodyIndemnificationsAndOtherMember
Futures and over-the-counter derivatives clearing    
Maximum potential amount of future payments    
Number of types of margin 2c_NumberOfTypesOfMargin
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_FuturesAndOverTheCounterDerivativesClearingMember
 
Amount of cash initial margin collected and remitted $ 3,200,000,000c_CashInitialMarginCollectedAndRemittedAmount
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_FuturesAndOverTheCounterDerivativesClearingMember
$ 1,400,000,000c_CashInitialMarginCollectedAndRemittedAmount
/ us-gaap_GuaranteeObligationsByNatureAxis
= c_FuturesAndOverTheCounterDerivativesClearingMember