Annual report pursuant to Section 13 and 15(d)

Stock-based Compensation Plans - Restricted Stock Units (Details)

v2.4.1.9
Stock-based Compensation Plans - Restricted Stock Units (Details) (USD $)
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Weighted-average Grant Date Fair Value (in dollars per share):      
Cash Flow Effect, Cash Used to Settle Awards $ 1,700,000,000us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards $ 1,400,000,000us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards $ 779,000,000us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards
Stock-settled Restricted Stock and Restricted Stock Units      
Restricted Stock/Units (in shares);      
Outstanding at beginning of period 71,202,751us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_AwardTypeAxis
= bac_StocksettledRestrictedStockandRestrictedStockUnitsMember
   
Granted 2,064,195us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
/ us-gaap_AwardTypeAxis
= bac_StocksettledRestrictedStockandRestrictedStockUnitsMember
   
Vested (42,209,408)us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
/ us-gaap_AwardTypeAxis
= bac_StocksettledRestrictedStockandRestrictedStockUnitsMember
   
Canceled (1,174,769)us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
/ us-gaap_AwardTypeAxis
= bac_StocksettledRestrictedStockandRestrictedStockUnitsMember
   
Outstanding at end of period 29,882,769us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_AwardTypeAxis
= bac_StocksettledRestrictedStockandRestrictedStockUnitsMember
   
Weighted-average Grant Date Fair Value (in dollars per share):      
Outstanding at beginning of period $ 12.05us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
/ us-gaap_AwardTypeAxis
= bac_StocksettledRestrictedStockandRestrictedStockUnitsMember
   
Granted $ 16.63us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
/ us-gaap_AwardTypeAxis
= bac_StocksettledRestrictedStockandRestrictedStockUnitsMember
   
Vested $ 14.27us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
/ us-gaap_AwardTypeAxis
= bac_StocksettledRestrictedStockandRestrictedStockUnitsMember
   
Canceled $ 10.45us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
/ us-gaap_AwardTypeAxis
= bac_StocksettledRestrictedStockandRestrictedStockUnitsMember
   
Outstanding at end of period $ 9.30us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
/ us-gaap_AwardTypeAxis
= bac_StocksettledRestrictedStockandRestrictedStockUnitsMember
   
Restricted Stock and Restricted Stock Units      
Weighted-average Grant Date Fair Value (in dollars per share):      
Total Unrecognized Compensation Cost 1,500,000,000us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
/ us-gaap_AwardTypeAxis
= bac_RestrictedStockandRestrictedStockUnitsMember
   
Total Unrecognized Compensation Cost, Expected Period 4 years 0 months    
Total Unrecognized Compensation Cost, Period for Recognition 1 year 7 months    
Vested in Period, Fair Value $ 576,000,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
/ us-gaap_AwardTypeAxis
= bac_RestrictedStockandRestrictedStockUnitsMember
$ 1,000,000,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
/ us-gaap_AwardTypeAxis
= bac_RestrictedStockandRestrictedStockUnitsMember
$ 2,900,000,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
/ us-gaap_AwardTypeAxis
= bac_RestrictedStockandRestrictedStockUnitsMember
Key Associate Stock Plan | Stock-settled Restricted Stock and Restricted Stock Units      
Restricted Stock/Units (in shares);      
Granted 2,000,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
/ us-gaap_AwardTypeAxis
= bac_StocksettledRestrictedStockandRestrictedStockUnitsMember
/ us-gaap_PlanNameAxis
= bac_KeyAssociateStockPlanMember
   
Key Associate Stock Plan | Cash-settled Restricted Stock Units      
Restricted Stock/Units (in shares);      
Outstanding at beginning of period 359,928,869us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_AwardTypeAxis
= bac_CashsettledRestrictedStockUnitsMember
/ us-gaap_PlanNameAxis
= bac_KeyAssociateStockPlanMember
   
Granted 130,956,173us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
/ us-gaap_AwardTypeAxis
= bac_CashsettledRestrictedStockUnitsMember
/ us-gaap_PlanNameAxis
= bac_KeyAssociateStockPlanMember
   
Vested (162,061,256)us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
/ us-gaap_AwardTypeAxis
= bac_CashsettledRestrictedStockUnitsMember
/ us-gaap_PlanNameAxis
= bac_KeyAssociateStockPlanMember
   
Canceled (11,867,351)us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
/ us-gaap_AwardTypeAxis
= bac_CashsettledRestrictedStockUnitsMember
/ us-gaap_PlanNameAxis
= bac_KeyAssociateStockPlanMember
   
Outstanding at end of period 316,956,435us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_AwardTypeAxis
= bac_CashsettledRestrictedStockUnitsMember
/ us-gaap_PlanNameAxis
= bac_KeyAssociateStockPlanMember