XML 107 R58.htm IDEA: XBRL DOCUMENT v2.4.1.9
Mortgage Loans TDR (Details) (USD $)
In Millions, unless otherwise specified
3 Months Ended
Mar. 31, 2015
contracts
Mar. 31, 2014
contracts
Financing Receivable, Modifications [Line Items]    
Average term extension of a single-family modified loan 161 months 159 months
Average interest rate reduction of a single-family modified loan 0.77%fnm_FinancingReceivableModificationsAverageInterestRateReductionPercentagePoint 1.23%fnm_FinancingReceivableModificationsAverageInterestRateReductionPercentagePoint
Number of loans troubled debt restructurings activity 24,863us-gaap_FinancingReceivableModificationsNumberOfContracts2 34,344us-gaap_FinancingReceivableModificationsNumberOfContracts2
Recorded investment troubled debt restructurings activity $ 3,504us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2 $ 5,111us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
Number of loans troubled debt restructurings subsequent default 8,202us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1 10,568us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
Recorded investment troubled debt restructurings subsequent default 1,279us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1 1,701us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
Single-Family [Member]    
Financing Receivable, Modifications [Line Items]    
Number of loans troubled debt restructurings activity 24,860us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
34,338us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Recorded investment troubled debt restructurings activity 3,499us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
5,077us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Number of loans troubled debt restructurings subsequent default 8,200us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
10,564us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Recorded investment troubled debt restructurings subsequent default 1,275us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
1,687us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Primary [Member]    
Financing Receivable, Modifications [Line Items]    
Number of loans troubled debt restructurings activity 21,407us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
28,842us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Recorded investment troubled debt restructurings activity 2,945us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
4,110us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Number of loans troubled debt restructurings subsequent default 6,723us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
8,598us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Recorded investment troubled debt restructurings subsequent default 1,003us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
1,310us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Government [Member]    
Financing Receivable, Modifications [Line Items]    
Number of loans troubled debt restructurings activity 74us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
62us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Recorded investment troubled debt restructurings activity 8us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
8us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Number of loans troubled debt restructurings subsequent default 20us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
18us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Recorded investment troubled debt restructurings subsequent default 3us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
2us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Alt-A [Member]    
Financing Receivable, Modifications [Line Items]    
Number of loans troubled debt restructurings activity 2,789us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
4,396us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Recorded investment troubled debt restructurings activity 438us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
740us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Number of loans troubled debt restructurings subsequent default 1,153us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
1,444us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Recorded investment troubled debt restructurings subsequent default 203us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
260us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Other [Member]    
Financing Receivable, Modifications [Line Items]    
Number of loans troubled debt restructurings activity 590us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
1,038us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Recorded investment troubled debt restructurings activity 108us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
219us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Number of loans troubled debt restructurings subsequent default 304us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
504us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Recorded investment troubled debt restructurings subsequent default 66us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
115us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Multifamily [Member]    
Financing Receivable, Modifications [Line Items]    
Number of loans troubled debt restructurings activity 3us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
6us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Recorded investment troubled debt restructurings activity 5us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
34us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Number of loans troubled debt restructurings subsequent default 2us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
4us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Recorded investment troubled debt restructurings subsequent default $ 4us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
$ 14us-gaap_FinancingReceivableModificationsSubsequentDefaultRecordedInvestment1
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember