XML 143 R106.htm IDEA: XBRL DOCUMENT v2.4.1.9
Equity Schedule of Stock by Class (Details) (USD $)
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Sep. 08, 2008
Dec. 14, 2007
Nov. 21, 2007
Jun. 04, 2008
May 22, 2008
May 19, 2008
Class of Stock [Line Items]                
Senior preferred stock issued, shares 1,000,000fnm_SeniorPreferredStockIssuedShares 1,000,000fnm_SeniorPreferredStockIssuedShares            
Senior Preferred Stock Value $ 117,149,000,000fnm_SeniorPreferredStockValue $ 117,149,000,000fnm_SeniorPreferredStockValue            
Senior preferred stock, shares outstanding 1,000,000fnm_SeniorPreferredStockSharesOutstanding 1,000,000fnm_SeniorPreferredStockSharesOutstanding            
Preferred Stock, Shares Issued 555,374,922us-gaap_PreferredStockSharesIssued 555,374,922us-gaap_PreferredStockSharesIssued            
Preferred Stock Issued, Amount 19,130,000,000us-gaap_PreferredStockValue 19,130,000,000us-gaap_PreferredStockValue            
Preferred stock, shares outstanding 555,374,922us-gaap_PreferredStockSharesOutstanding 555,374,922us-gaap_PreferredStockSharesOutstanding            
Preferred Stock Outstanding, Amount 19,130,000,000us-gaap_PreferredStockValueOutstanding 19,130,000,000us-gaap_PreferredStockValueOutstanding            
Capital Reserve Amount, current Year, Senior Preferred Stock Purchase Agreement, Amendment 2,400,000,000fnm_CapitalReserveAmountcurrentYearSeniorPreferredStockPurchaseAgreementAmendment              
Capital reserve amount for the next fiscal year based on the amended Senior Preferred Stock Purchase agreement 1,800,000,000fnm_CapitalReserveAmountFiscalYearSeniorPreferredStockPurchaseAgreementAmendment              
Annual reduction of capital reserve from 2013 to 2018 based on the Senior Preferred Stock Purchase Agreement, Amendment 600,000,000fnm_AnnualReductionOfCapitalReserveAmountFrom2013To2018SeniorPreferredStockPurchaseAgreementAmendment              
Capital reserve amount on January 2018 0fnm_CapitalreserveamountonJanuary2018              
Series 2008-2 Senior Preferred Stock [Member]                
Class of Stock [Line Items]                
Senior preferred stock issued, shares 1,000,000fnm_SeniorPreferredStockIssuedShares
/ us-gaap_StatementClassOfStockAxis
= fnm_Series20082SeniorPreferredStockMember
1,000,000fnm_SeniorPreferredStockIssuedShares
/ us-gaap_StatementClassOfStockAxis
= fnm_Series20082SeniorPreferredStockMember
           
Senior Preferred Stock Value 117,149,000,000fnm_SeniorPreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_Series20082SeniorPreferredStockMember
117,149,000,000fnm_SeniorPreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_Series20082SeniorPreferredStockMember
1,000,000,000.0fnm_SeniorPreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_Series20082SeniorPreferredStockMember
         
Senior preferred stock, shares outstanding 1,000,000fnm_SeniorPreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_Series20082SeniorPreferredStockMember
1,000,000fnm_SeniorPreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_Series20082SeniorPreferredStockMember
           
Senior Preferred Stock, Stated Value per Share $ 117,149fnm_SeniorPreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_Series20082SeniorPreferredStockMember
  $ 1,000fnm_SeniorPreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_Series20082SeniorPreferredStockMember
         
Series D Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 3,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesDPreferredStockMember
3,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesDPreferredStockMember
           
Preferred Stock Issued, Amount 150,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesDPreferredStockMember
150,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesDPreferredStockMember
           
Preferred stock, shares outstanding 3,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesDPreferredStockMember
3,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesDPreferredStockMember
           
Preferred Stock Outstanding, Amount 150,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesDPreferredStockMember
150,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesDPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 50us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesDPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 5.25%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesDPreferredStockMember
             
Series E Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 3,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesEPreferredStockMember
3,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesEPreferredStockMember
           
Preferred Stock Issued, Amount 150,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesEPreferredStockMember
150,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesEPreferredStockMember
           
Preferred stock, shares outstanding 3,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesEPreferredStockMember
3,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesEPreferredStockMember
           
Preferred Stock Outstanding, Amount 150,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesEPreferredStockMember
150,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesEPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 50us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesEPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 5.10%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesEPreferredStockMember
             
Series F Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 14,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
14,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
           
Preferred Stock Issued, Amount 690,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
690,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
           
Preferred stock, shares outstanding 14,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
14,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
           
Preferred Stock Outstanding, Amount 690,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
690,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 50us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 0.26%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
             
Preferred Stock, Redemption Terms P2Y              
Series G Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 6,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
6,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
           
Preferred Stock Issued, Amount 288,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
288,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
           
Preferred stock, shares outstanding 6,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
6,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
           
Preferred Stock Outstanding, Amount 288,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
288,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 50us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 0.40%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
             
Preferred Stock, Redemption Terms P2Y              
Series H Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 8,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesHPreferredStockMember
8,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesHPreferredStockMember
           
Preferred Stock Issued, Amount 400,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesHPreferredStockMember
400,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesHPreferredStockMember
           
Preferred stock, shares outstanding 8,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesHPreferredStockMember
8,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesHPreferredStockMember
           
Preferred Stock Outstanding, Amount 400,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesHPreferredStockMember
400,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesHPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 50us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesHPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 5.81%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesHPreferredStockMember
             
Series I Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 6,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesIPreferredStockMember
6,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesIPreferredStockMember
           
Preferred Stock Issued, Amount 300,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesIPreferredStockMember
300,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesIPreferredStockMember
           
Preferred stock, shares outstanding 6,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesIPreferredStockMember
6,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesIPreferredStockMember
           
Preferred Stock Outstanding, Amount 300,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesIPreferredStockMember
300,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesIPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 50us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesIPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 5.375%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesIPreferredStockMember
             
Series L Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 7,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesLPreferredStockMember
7,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesLPreferredStockMember
           
Preferred Stock Issued, Amount 345,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesLPreferredStockMember
345,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesLPreferredStockMember
           
Preferred stock, shares outstanding 7,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesLPreferredStockMember
7,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesLPreferredStockMember
           
Preferred Stock Outstanding, Amount 345,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesLPreferredStockMember
345,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesLPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 50us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesLPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 5.125%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesLPreferredStockMember
             
Series M Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 9,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesMPreferredStockMember
9,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesMPreferredStockMember
           
Preferred Stock Issued, Amount 460,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesMPreferredStockMember
460,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesMPreferredStockMember
           
Preferred stock, shares outstanding 9,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesMPreferredStockMember
9,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesMPreferredStockMember
           
Preferred Stock Outstanding, Amount 460,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesMPreferredStockMember
460,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesMPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 50us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesMPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 4.75%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesMPreferredStockMember
             
Series N Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 5,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesNPreferredStockMember
5,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesNPreferredStockMember
           
Preferred Stock Issued, Amount 225,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesNPreferredStockMember
225,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesNPreferredStockMember
           
Preferred stock, shares outstanding 5,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesNPreferredStockMember
5,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesNPreferredStockMember
           
Preferred Stock Outstanding, Amount 225,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesNPreferredStockMember
225,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesNPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 50us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesNPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 5.50%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesNPreferredStockMember
             
Series O Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 50,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
50,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
           
Preferred Stock Issued, Amount 2,500,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
2,500,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
           
Preferred stock, shares outstanding 50,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
50,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
           
Preferred Stock Outstanding, Amount 2,500,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
2,500,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 50us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 7.00%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
             
Convertible Series 2004-1 Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 24,922us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_ConvertibleSeries20041PreferredStockMember
24,922us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_ConvertibleSeries20041PreferredStockMember
           
Preferred Stock Issued, Amount 2,492,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_ConvertibleSeries20041PreferredStockMember
2,492,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_ConvertibleSeries20041PreferredStockMember
           
Preferred stock, shares outstanding 24,922us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_ConvertibleSeries20041PreferredStockMember
24,922us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_ConvertibleSeries20041PreferredStockMember
           
Preferred Stock Outstanding, Amount 2,492,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_ConvertibleSeries20041PreferredStockMember
2,492,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_ConvertibleSeries20041PreferredStockMember
           
Preferred Stock, Stated Value per Share $ 100,000us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_ConvertibleSeries20041PreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 5.375%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= fnm_ConvertibleSeries20041PreferredStockMember
             
Series P Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 40,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
40,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
           
Preferred Stock Issued, Amount 1,000,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
1,000,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
           
Preferred stock, shares outstanding 40,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
40,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
           
Preferred Stock Outstanding, Amount 1,000,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
1,000,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 25us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 4.50%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
             
Series Q Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 15,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesQPreferredStockMember
15,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesQPreferredStockMember
           
Preferred Stock Issued, Amount 375,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesQPreferredStockMember
375,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesQPreferredStockMember
           
Preferred stock, shares outstanding 15,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesQPreferredStockMember
15,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesQPreferredStockMember
           
Preferred Stock Outstanding, Amount 375,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesQPreferredStockMember
375,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesQPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 25us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesQPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 6.75%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesQPreferredStockMember
             
Series R Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 21,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
21,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
  1,200,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
20,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
     
Preferred Stock Issued, Amount 530,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
530,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
  30,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
500,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
     
Preferred stock, shares outstanding 21,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
21,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
           
Preferred Stock Outstanding, Amount 530,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
530,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 25us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 7.625%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesRPreferredStockMember
             
Series S Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 280,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
280,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
           
Preferred Stock Issued, Amount 7,000,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
7,000,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
           
Preferred stock, shares outstanding 280,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
280,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
           
Preferred Stock Outstanding, Amount 7,000,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
7,000,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 25us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 7.75%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
             
Preferred Stock, Redemption Terms P5Y              
Series T Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred Stock, Shares Issued 89,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
89,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
      1,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
8,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
80,000,000us-gaap_PreferredStockSharesIssued
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
Preferred Stock Issued, Amount 2,225,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
2,225,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
      25,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
200,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
2,000,000,000us-gaap_PreferredStockValue
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
Preferred stock, shares outstanding 89,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
89,000,000us-gaap_PreferredStockSharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
           
Preferred Stock Outstanding, Amount $ 2,225,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
$ 2,225,000,000us-gaap_PreferredStockValueOutstanding
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
           
Preferred Stock, Stated Value per Share $ 25us-gaap_PreferredStockParOrStatedValuePerShare
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
             
Preferred stock, annual dividend rate (as a percent) 8.25%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesTPreferredStockMember
             
Maximum [Member] | Series F Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred stock, annual dividend rate (as a percent) 11.00%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
             
Maximum [Member] | Series G Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred stock, annual dividend rate (as a percent) 11.00%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
             
Minimum [Member] | Series O Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred stock, annual dividend rate (as a percent) 7.00%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
             
Minimum [Member] | Series P Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred stock, annual dividend rate (as a percent) 4.50%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
             
Minimum [Member] | Series S Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred stock, annual dividend rate (as a percent) 7.75%us-gaap_PreferredStockDividendRatePercentage
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
             
Two-year Maturity U.S. Treasury Rate [Member] | Series F Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred stock dividend rate, basis spread on variable rate 0.16%fnm_PreferredStockDividendRateBasisSpreadOnVariableRate
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesFPreferredStockMember
/ us-gaap_VariableRateAxis
= fnm_TwoYearMaturityUSTreasuryRateMember
             
Two-year Maturity U.S. Treasury Rate [Member] | Series G Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred stock dividend rate, basis spread on variable rate 0.18%fnm_PreferredStockDividendRateBasisSpreadOnVariableRate
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesGPreferredStockMember
/ us-gaap_VariableRateAxis
= fnm_TwoYearMaturityUSTreasuryRateMember
             
Ten-year Maturity U.S. Treasury Rate [Member] | Series O Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred stock dividend rate, basis spread on variable rate 2.375%fnm_PreferredStockDividendRateBasisSpreadOnVariableRate
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesOPreferredStockMember
/ us-gaap_VariableRateAxis
= fnm_TenYearMaturityUSTreasuryRateMember
             
Three-Month LIBOR [Member] | Series P Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred stock dividend rate, basis spread on variable rate 0.75%fnm_PreferredStockDividendRateBasisSpreadOnVariableRate
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesPPreferredStockMember
/ us-gaap_VariableRateAxis
= fnm_ThreeMonthLiborMember
             
Three-Month LIBOR [Member] | Series S Preferred Stock [Member]                
Class of Stock [Line Items]                
Preferred stock dividend rate, basis spread on variable rate 4.23%fnm_PreferredStockDividendRateBasisSpreadOnVariableRate
/ us-gaap_StatementClassOfStockAxis
= fnm_SeriesSPreferredStockMember
/ us-gaap_VariableRateAxis
= fnm_ThreeMonthLiborMember