XML 23 R70.htm IDEA: XBRL DOCUMENT v2.4.1.9
Mortgage Loans Individually Impaired Loans (Details) (USD $)
In Millions, unless otherwise specified
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Financing Receivable, Impaired [Line Items]      
Individually impaired loans with related allowance recorded: unpaid principal balance $ 177,630us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance $ 185,695us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance  
Individually impaired loans with related allowance recorded: total recorded investment 168,510us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment 175,619us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment  
Related allowance for loan losses 31,375us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1 37,729us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1  
Individually impaired loans with no related allowance recorded: unpaid principal balance 22,563us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance 20,452us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance  
Individually impaired loans with no related allowance recorded: total recorded investment 19,676us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment 17,660us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment  
Total individually impaired loans: unpaid principal balance 200,193us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance 206,147us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance  
Total individually impaired loans: total recorded investment 188,186us-gaap_ImpairedFinancingReceivableRecordedInvestment 193,279us-gaap_ImpairedFinancingReceivableRecordedInvestment  
Interest Receivable [Member]      
Financing Receivable, Impaired [Line Items]      
Related allowance for loan losses 501us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
688us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
 
Single-Family [Member]      
Financing Receivable, Impaired [Line Items]      
Individually impaired loans with related allowance recorded: unpaid principal balance 176,400us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
183,438us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with related allowance recorded: total recorded investment 167,269us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
173,343us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
 
Related allowance for loan losses 31,200us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
37,423us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with no related allowance recorded: unpaid principal balance 21,998us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
18,525us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with no related allowance recorded: total recorded investment 19,108us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
15,721us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
 
Table Footnote [Abstract]      
Troubled debt restructuring recorded investment 185,200us-gaap_FinancingReceivableModificationsRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
187,600us-gaap_FinancingReceivableModificationsRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
193,400us-gaap_FinancingReceivableModificationsRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Interest Receivable [Member]      
Financing Receivable, Impaired [Line Items]      
Related allowance for loan losses 495us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
678us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_SingleFamilyMember
 
Multifamily [Member]      
Financing Receivable, Impaired [Line Items]      
Individually impaired loans with related allowance recorded: unpaid principal balance 1,230us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
2,257us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
 
Individually impaired loans with related allowance recorded: total recorded investment 1,241us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
2,276us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
 
Related allowance for loan losses 175us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
306us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
 
Individually impaired loans with no related allowance recorded: unpaid principal balance 565us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
1,927us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
 
Individually impaired loans with no related allowance recorded: total recorded investment 568us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
1,939us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
 
Table Footnote [Abstract]      
Troubled debt restructuring recorded investment 716us-gaap_FinancingReceivableModificationsRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
911us-gaap_FinancingReceivableModificationsRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
1,100us-gaap_FinancingReceivableModificationsRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
Multifamily [Member] | Interest Receivable [Member]      
Financing Receivable, Impaired [Line Items]      
Related allowance for loan losses 6us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
10us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_MultifamilyMember
 
Single-Family [Member] | Primary [Member]      
Financing Receivable, Impaired [Line Items]      
Individually impaired loans with related allowance recorded: unpaid principal balance 125,960us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
130,080us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with related allowance recorded: total recorded investment 120,221us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
123,631us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Related allowance for loan losses 20,327us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
24,145us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with no related allowance recorded: unpaid principal balance 16,704us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
14,076us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with no related allowance recorded: total recorded investment 14,876us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
12,305us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Single-Family [Member] | Primary [Member] | Interest Receivable [Member]      
Financing Receivable, Impaired [Line Items]      
Related allowance for loan losses 309us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
430us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_PrimaryMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Single-Family [Member] | Government [Member]      
Financing Receivable, Impaired [Line Items]      
Individually impaired loans with related allowance recorded: unpaid principal balance 281us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
213us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with related allowance recorded: total recorded investment 285us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
210us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Related allowance for loan losses 46us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
35us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with no related allowance recorded: unpaid principal balance 61us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
120us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with no related allowance recorded: total recorded investment 57us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
120us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Single-Family [Member] | Government [Member] | Interest Receivable [Member]      
Financing Receivable, Impaired [Line Items]      
Related allowance for loan losses 12us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
5us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_GovernmentMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Single-Family [Member] | Alt-A [Member]      
Financing Receivable, Impaired [Line Items]      
Individually impaired loans with related allowance recorded: unpaid principal balance 35,492us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
37,356us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with related allowance recorded: total recorded investment 32,816us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
34,479us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Related allowance for loan losses 7,778us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
9,364us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with no related allowance recorded: unpaid principal balance 3,993us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
3,290us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with no related allowance recorded: total recorded investment 3,119us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
2,428us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Single-Family [Member] | Alt-A [Member] | Interest Receivable [Member]      
Financing Receivable, Impaired [Line Items]      
Related allowance for loan losses 136us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
187us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_AltAMortgageLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Single-Family [Member] | Other [Member]      
Financing Receivable, Impaired [Line Items]      
Individually impaired loans with related allowance recorded: unpaid principal balance 14,667us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
15,789us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with related allowance recorded: total recorded investment 13,947us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
15,023us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Related allowance for loan losses 3,049us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
3,879us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with no related allowance recorded: unpaid principal balance 1,240us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
1,039us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Individually impaired loans with no related allowance recorded: total recorded investment 1,056us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
868us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
 
Single-Family [Member] | Other [Member] | Interest Receivable [Member]      
Financing Receivable, Impaired [Line Items]      
Related allowance for loan losses $ 38us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
$ 56us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= fnm_InterestReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnm_OtherMortgageLoanMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember