Quarterly report pursuant to Section 13 or 15(d)

Derivatives - Derivatives Designated as Accounting Hedges - Cash Flow and Net Investment Hedges (Details)

v2.4.1.9
Derivatives - Derivatives Designated as Accounting Hedges - Cash Flow and Net Investment Hedges (Details) (USD $)
In Millions, unless otherwise specified
3 Months Ended
Mar. 31, 2015
Mar. 31, 2014
Cash flow hedges    
Derivative Instruments, Gain (Loss) [Line Items]    
Gains (Losses) Recognized in Accumulated OCI on Derivatives $ (186)us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
$ 173us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
Gains (Losses) in Income Reclassified from Accumulated OCI (256)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
(131)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
Hedge Ineffectiveness and Amounts Excluded from Effectiveness Testing (1)us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
 
Interest rate risk on variable-rate portfolios | Cash flow hedges    
Derivative Instruments, Gain (Loss) [Line Items]    
Gains (Losses) Recognized in Accumulated OCI on Derivatives 24us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= bac_InterestRateRiskOnVariableRatePortfoliosMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
17us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= bac_InterestRateRiskOnVariableRatePortfoliosMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
Gains (Losses) in Income Reclassified from Accumulated OCI (255)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= bac_InterestRateRiskOnVariableRatePortfoliosMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
(281)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= bac_InterestRateRiskOnVariableRatePortfoliosMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
Hedge Ineffectiveness and Amounts Excluded from Effectiveness Testing (1)us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet
/ us-gaap_DerivativeInstrumentRiskAxis
= bac_InterestRateRiskOnVariableRatePortfoliosMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
 
Price risk on restricted stock awards | Cash flow hedges    
Derivative Instruments, Gain (Loss) [Line Items]    
Gains (Losses) Recognized in Accumulated OCI on Derivatives (210)us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= bac_PriceRiskonRestrictedStockAwardsMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
156us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= bac_PriceRiskonRestrictedStockAwardsMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
Gains (Losses) in Income Reclassified from Accumulated OCI (1)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= bac_PriceRiskonRestrictedStockAwardsMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
150us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= bac_PriceRiskonRestrictedStockAwardsMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
Foreign exchange contracts | Net investment hedges    
Derivative Instruments, Gain (Loss) [Line Items]    
Gains (Losses) Recognized in Accumulated OCI on Derivatives 1,982us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_NetInvestmentHedgingMember
(181)us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_NetInvestmentHedgingMember
Gains (Losses) in Income Reclassified from Accumulated OCI   (2)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_NetInvestmentHedgingMember
Hedge Ineffectiveness and Amounts Excluded from Effectiveness Testing $ (98)us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_NetInvestmentHedgingMember
$ (58)us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_NetInvestmentHedgingMember