Quarterly report pursuant to Section 13 or 15(d)

Commitments and Contingencies Commitments and Contingencies - Credit Extension Commitments (Details)

v2.4.1.9
Commitments and Contingencies Commitments and Contingencies - Credit Extension Commitments (Details) (USD $)
In Millions, unless otherwise specified
Mar. 31, 2015
Dec. 31, 2014
Other Commitments [Line Items]    
Expire in One Year or Less $ 463,806bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess $ 471,320bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
Expire After One Year Through Three Years 128,336bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears 126,525bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
Expire After Three Years Through Five Years 154,292bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears 163,616bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
Expire After Five Years 61,597bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears 36,254bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
Notional Amount of Credit Extension Commitments 808,031bac_CreditExtensionCommitmentsNotionalAmount 797,715bac_CreditExtensionCommitmentsNotionalAmount
Loan Commitments    
Other Commitments [Line Items]    
Expire in One Year or Less 76,170bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LoanPurchaseCommitmentsMember
79,897bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LoanPurchaseCommitmentsMember
Expire After One Year Through Three Years 103,314bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LoanPurchaseCommitmentsMember
97,583bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LoanPurchaseCommitmentsMember
Expire After Three Years Through Five Years 143,400bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LoanPurchaseCommitmentsMember
146,743bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LoanPurchaseCommitmentsMember
Expire After Five Years 26,557bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LoanPurchaseCommitmentsMember
18,942bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LoanPurchaseCommitmentsMember
Notional Amount of Credit Extension Commitments 349,441bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LoanPurchaseCommitmentsMember
343,165bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LoanPurchaseCommitmentsMember
Home equity    
Other Commitments [Line Items]    
Expire in One Year or Less 6,440bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= us-gaap_HomeEquityMember
6,292bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= us-gaap_HomeEquityMember
Expire After One Year Through Three Years 20,439bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_HomeEquityMember
19,679bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_HomeEquityMember
Expire After Three Years Through Five Years 9,931bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_HomeEquityMember
12,319bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_HomeEquityMember
Expire After Five Years 16,551bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_HomeEquityMember
15,417bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_HomeEquityMember
Notional Amount of Credit Extension Commitments 53,361bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_HomeEquityMember
53,707bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_HomeEquityMember
Standby letters of credit and financial guarantees    
Other Commitments [Line Items]    
Expire in One Year or Less 10,020bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
19,259bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Expire After One Year Through Three Years 4,290bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
9,106bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Expire After Three Years Through Five Years 931bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
4,519bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Expire After Five Years 18,441bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
1,807bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Notional Amount of Credit Extension Commitments 33,682bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
34,691bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
Standby letters of credit and financial guarantees | Investment grade    
Other Commitments [Line Items]    
Notional Amount of Credit Extension Commitments 25,300bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
/ us-gaap_InternalCreditAssessmentAxis
= bac_InternalInvestmentGradeMember
26,100bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
/ us-gaap_InternalCreditAssessmentAxis
= bac_InternalInvestmentGradeMember
Standby letters of credit and financial guarantees | Non-investment grade    
Other Commitments [Line Items]    
Notional Amount of Credit Extension Commitments 8,000bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
/ us-gaap_InternalCreditAssessmentAxis
= bac_InternalNoninvestmentGradeMember
8,200bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
/ us-gaap_InternalCreditAssessmentAxis
= bac_InternalNoninvestmentGradeMember
Letters of credit    
Other Commitments [Line Items]    
Expire in One Year or Less 1,643bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LetterOfCreditMember
1,883bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LetterOfCreditMember
Expire After One Year Through Three Years 293bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LetterOfCreditMember
157bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LetterOfCreditMember
Expire After Three Years Through Five Years 30bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LetterOfCreditMember
35bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LetterOfCreditMember
Expire After Five Years 48bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LetterOfCreditMember
88bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LetterOfCreditMember
Notional Amount of Credit Extension Commitments 2,014bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LetterOfCreditMember
2,163bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_LetterOfCreditMember
Legally binding commitments    
Other Commitments [Line Items]    
Expire in One Year or Less 94,273bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= us-gaap_CommitmentsToExtendCreditMember
107,331bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= us-gaap_CommitmentsToExtendCreditMember
Expire After One Year Through Three Years 128,336bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_CommitmentsToExtendCreditMember
126,525bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_CommitmentsToExtendCreditMember
Expire After Three Years Through Five Years 154,292bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_CommitmentsToExtendCreditMember
163,616bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_CommitmentsToExtendCreditMember
Expire After Five Years 61,597bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_CommitmentsToExtendCreditMember
36,254bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= us-gaap_CommitmentsToExtendCreditMember
Notional Amount of Credit Extension Commitments 438,498bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_CommitmentsToExtendCreditMember
433,726bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_CommitmentsToExtendCreditMember
Credit card lines    
Other Commitments [Line Items]    
Expire in One Year or Less 369,533bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= bac_CreditCardLinesMember
363,989bac_CreditExtensionCommitmentsNotionalAmountExpirationinOneYearorLess
/ us-gaap_FinancialInstrumentAxis
= bac_CreditCardLinesMember
Expire After One Year Through Three Years 0bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= bac_CreditCardLinesMember
0bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterOneYearThroughThreeYears
/ us-gaap_FinancialInstrumentAxis
= bac_CreditCardLinesMember
Expire After Three Years Through Five Years 0bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= bac_CreditCardLinesMember
0bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterThreeYearsThroughFiveYears
/ us-gaap_FinancialInstrumentAxis
= bac_CreditCardLinesMember
Expire After Five Years 0bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= bac_CreditCardLinesMember
0bac_CreditExtensionCommitmentsNotionalAmountExpirationAfterFiveYears
/ us-gaap_FinancialInstrumentAxis
= bac_CreditCardLinesMember
Notional Amount of Credit Extension Commitments 369,533bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= bac_CreditCardLinesMember
363,989bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= bac_CreditCardLinesMember
Consumer Portfolio Segment | Standby letters of credit and financial guarantees    
Other Commitments [Line Items]    
Notional Amount of Credit Extension Commitments $ 373bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
/ bac_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember
$ 396bac_CreditExtensionCommitmentsNotionalAmount
/ us-gaap_FinancialInstrumentAxis
= us-gaap_FinancialStandbyLetterOfCreditMember
/ bac_FinancingReceivablePortfolioSegmentAxis
= us-gaap_ConsumerPortfolioSegmentMember