Fair Value Measurements - Gains and Losses (Details) (USD $) In Millions, unless otherwise specified
|
12 Months Ended |
Dec. 31, 2014
|
Dec. 31, 2013
|
Dec. 31, 2012
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total |
$ (283)us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings
|
$ 1,998us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings
|
$ 136us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Total |
(1,551)bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss
|
342bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss
|
(3,204)bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss
|
Trading account liabilities – Corporate securities and other |
|
|
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
1us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesAndOtherMember
|
|
4us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesAndOtherMember
|
Corporate securities, trading loans and other |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
1us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
10us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
4us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
Accrued expenses and other liabilities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
2us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember
|
30us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember
|
(4)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
1us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember
|
|
(2)us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember
|
Long-term debt |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
49us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember
|
13us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember
|
(307)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
(8)us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember
|
(36)us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember
|
(309)us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember
|
Corporate securities, trading loans and other |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
180us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
242us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
195us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
69us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
(130)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
(19)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
Equity securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember
|
74us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember
|
31us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
(8)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember
|
40us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember
|
17us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember
|
Non-U.S. sovereign debt |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
30us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
50us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
8us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
31us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
80us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
20us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
Mortgage trading loans and ABS |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
199us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
53us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
215us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
79us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
(174)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
36us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
Trading Securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
409us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember
|
419us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember
|
449us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
171us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember
|
(184)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember
|
54us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember
|
Derivative assets |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
463us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember
|
(304)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember
|
(221)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
(87)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember
|
(1,340)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember
|
(2,326)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember
|
Non-agency residential |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(2)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
|
(69)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
Non-U.S. securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(7)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember
|
5us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember
|
|
Corporate/Agency bonds |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
|
|
(2)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_CorporateBondSecuritiesMember
|
Other taxable securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
9us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember
|
9us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember
|
23us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
|
|
2us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember
|
Tax-exempt securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
8us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember
|
3us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember
|
61us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember
|
Available-for-sale Securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
8us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember
|
17us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember
|
13us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember
|
Loans and leases |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
69us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember
|
98us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember
|
334us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
76us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember
|
118us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember
|
214us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember
|
Mortgage servicing rights |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(1,231)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember
|
1,941us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember
|
(430)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
(1,753)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember
|
1,541us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember
|
(1,100)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember
|
Loans Held-for-Sale |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
45us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember
|
62us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember
|
352us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
(4)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember
|
63us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember
|
280us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember
|
Other assets |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(98)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember
|
(288)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember
|
(54)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
52us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember
|
180us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember
|
(21)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember
|
Trading Account Profits (Losses) |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total |
(7)us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(750)us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(2,886)us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Total |
(95)bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(1,563)bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(2,858)bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Trading account liabilities – Corporate securities and other |
|
|
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
1us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
|
4us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Corporate securities, trading loans and other |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
1us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
10us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
4us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Accrued expenses and other liabilities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
0us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
|
0us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Long-term debt |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
78us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
45us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(133)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
29us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(4)us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(136)us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Corporate securities, trading loans and other |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
180us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
242us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
195us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
69us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(130)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(19)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Equity securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
|
74us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
31us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
(8)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
40us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
17us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Non-U.S. sovereign debt |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
30us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
50us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
8us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
31us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
80us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
20us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Mortgage trading loans and ABS |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
199us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
53us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
215us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
79us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(174)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
36us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Trading Securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
409us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
419us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
449us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
171us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(184)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
54us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Derivative assets |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(475)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(1,224)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(3,208)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
(276)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(1,375)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
(2,782)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Non-agency residential |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Non-U.S. securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
|
Trading Account Profits (Losses) | Corporate/Agency bonds |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
|
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_CorporateBondSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Other taxable securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
2us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
|
|
2us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Tax-exempt securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Available-for-sale Securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
2us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Loans and leases |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Mortgage servicing rights |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(6)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
(6)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Loans Held-for-Sale |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(14)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
(14)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Trading Account Profits (Losses) | Other assets |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_TradingGainLossMember
|
Mortgage Banking Income (Loss) |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total |
(470)us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
2,984us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
2,631us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Total |
(1,712)bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
1,721bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
(603)bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Trading account liabilities – Corporate securities and other |
|
|
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
0us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
|
0us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Corporate securities, trading loans and other |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Accrued expenses and other liabilities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
30us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
0us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
|
0us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Long-term debt |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
0us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Corporate securities, trading loans and other |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Equity securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Non-U.S. sovereign debt |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Mortgage trading loans and ABS |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Trading Securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Derivative assets |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
834us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
927us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
2,987us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
85us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
42us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
456us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Non-agency residential |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Non-U.S. securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
|
Mortgage Banking Income (Loss) | Corporate/Agency bonds |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
|
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_CorporateBondSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Other taxable securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
|
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Tax-exempt securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Available-for-sale Securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Loans and leases |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
(38)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
(34)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Mortgage servicing rights |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(1,225)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
1,941us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
(430)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
(1,747)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
1,541us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
(1,100)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Loans Held-for-Sale |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
2us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
148us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
6us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
112us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Mortgage Banking Income (Loss) | Other assets |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(79)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
122us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
(74)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
(50)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
166us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
(71)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_MortgageBankingIncomeLossMember
|
Other |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total |
194us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
(236)us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
391us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisGainLossIncludedInEarnings / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Total |
256bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
184bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
257bac_FairValueAssetsLiabilitesandNetDerivativeAssetLiabilityMeasuredonRecurringBasisChangeinUnrealizedGainLoss / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Trading account liabilities – Corporate securities and other |
|
|
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
0us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesAndOtherMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
|
0us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesAndOtherMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Corporate securities, trading loans and other |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Accrued expenses and other liabilities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
2us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
(4)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
1us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
|
(2)us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Long-term debt |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Total Realized and Unrealized Gains (losses) included in Earnings, Liabilities |
(29)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
(32)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
(174)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in Unrealized Gains (losses) relating to liabilities still held at reporting date |
(37)us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
(32)us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
(173)us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Corporate securities, trading loans and other |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Equity securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Non-U.S. sovereign debt |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Mortgage trading loans and ABS |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Trading Securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Derivative assets |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
104us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
(7)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
104us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
(7)us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Non-agency residential |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(2)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
|
(69)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Non-U.S. securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(7)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
5us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
|
Other | Corporate/Agency bonds |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
|
|
(2)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_CorporateBondSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Other taxable securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
9us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
9us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
21us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
|
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Tax-exempt securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
8us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
3us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
61us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Available-for-sale Securities |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
8us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
17us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
11us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Loans and leases |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
69us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
136us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
334us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
76us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
152us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
214us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Mortgage servicing rights |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
0us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Loans Held-for-Sale |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
59us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
60us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
204us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
10us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
57us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
168us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Other | Other assets |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
(19)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
(410)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
20us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
102us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
14us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
50us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = us-gaap_OtherOperatingIncomeExpenseMember
|
Equity investments | Net derivative assets and other assets |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
86us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_NetDerivativeAssetsandOtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_SegmentReconcilingItemsEquityInvestmentIncomeLossMember
|
77us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_NetDerivativeAssetsandOtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_SegmentReconcilingItemsEquityInvestmentIncomeLossMember
|
|
Equity investments | Other assets |
|
|
|
Level 3 Total Realized and Unrealized Gains (Losses) Related to Assets Included in Earnings |
|
|
|
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings |
|
|
97us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_SegmentReconcilingItemsEquityInvestmentIncomeLossMember
|
Level 3 Changes in Unrealized Gains (Losses) Relating to Assets Still Held at Reporting Date |
|
|
|
Change in unrealized Gains (losses) relating to assets still held at reporting date |
$ 170us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_SegmentReconcilingItemsEquityInvestmentIncomeLossMember
|
$ 53us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_SegmentReconcilingItemsEquityInvestmentIncomeLossMember
|
$ 141us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember / us-gaap_IncomeStatementLocationAxis = bac_SegmentReconcilingItemsEquityInvestmentIncomeLossMember
|