As of September 22, 2020 by FRED St. Louis Federal Reserve

Median Sales Price for New Houses Sold in the United States (MSPNHSUS)

indicator <-fredr_series_observations(series_id = "MSPNHSUS",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)],n=13) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2019-08-01 327000
2019-09-01 315700
2019-10-01 322400
2019-11-01 328000
2019-12-01 329500
2020-01-01 328900
2020-02-01 331800
2020-03-01 328200
2020-04-01 310100
2020-05-01 317100
2020-06-01 337700
2020-07-01 327800
2020-08-01 312800
#mean(indicator$value)
# plotting data
tail(indicator,n=48) %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-10-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price for NEW HOUSES in the U.S.", 
      subtitle = "* Caution: Different mixture of housing products each month",
       x="Monthly", y="Dollar",
       caption = "Data source: FRED Federal Reserve Bank of St. Louis; https://fred.stlouisfed.org.\nIllustration by @JoeLongSanDiego")+
    theme_economist()

National Housing Starts: Total: New Privately Owned Housing Units Started (HOUST)

indicator <-fredr_series_observations(series_id = "HOUST",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)],n=13) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2019-08-01 1377
2019-09-01 1274
2019-10-01 1340
2019-11-01 1371
2019-12-01 1587
2020-01-01 1617
2020-02-01 1567
2020-03-01 1269
2020-04-01 934
2020-05-01 1038
2020-06-01 1265
2020-07-01 1492
2020-08-01 1416
#mean(indicator$value)
# plotting data
tail(indicator,n=48) %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-10-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "New Residential Construction _ Privately Owned Housing Units", 
      subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Thousands of units",
       caption = "Data source: FRED, Federal Reserve Bank of St. Louis; https://fred.stlouisfed.org\nIllustration by @JoeLongSanDiego")+
    theme_economist()

National Existing Home Sales (EXHOSLUSM495N)

indicator <-fredr_series_observations(series_id = "EXHOSLUSM495N",
        observation_start = as.Date("2019-01-01")) 

indicator[,c(1,3)] %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2019-07-01 NA
2019-08-01 532000
2019-09-01 450000
2019-10-01 462000
2019-11-01 404000
2019-12-01 434000
2020-01-01 317000
2020-02-01 335000
2020-03-01 416000
2020-04-01 373000
2020-05-01 372000
2020-06-01 507000
2020-07-01 597000
2020-08-01 561000
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "grey", alpha = 0.03)+
   
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "National Existing Home Sales", 
       subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Number of units",
       caption = "Data source: FRED St. Louis Federal Reserve.\nIllustration by @JoeLongSanDiego")+
    theme_economist()
## Warning: Removed 1 row(s) containing missing values (geom_path).

Existing Single-Family Home Sales (EXSFHSUSM495N)

indicator <-fredr_series_observations(series_id = "EXSFHSUSM495N",
        observation_start = as.Date("2019-01-01")) 

indicator[,c(1,3)] %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2019-07-01 NA
2019-08-01 475000
2019-09-01 401000
2019-10-01 412000
2019-11-01 364000
2019-12-01 386000
2020-01-01 285000
2020-02-01 299000
2020-03-01 372000
2020-04-01 338000
2020-05-01 340000
2020-06-01 460000
2020-07-01 538000
2020-08-01 502000
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "grey", alpha = 0.03)+
   
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Existing Single-Family Home Sales", 
       subtitle = str_glue("\n* Caution: Different mixture of SFR housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Number of units",
       caption = "Data source: FRED St. Louis Federal Reserve.\nIllustration by @JoeLongSanDiego")+
    theme_economist()
## Warning: Removed 1 row(s) containing missing values (geom_path).

Housing Inventory: Median Listing Price in California (MEDLISPRICA)

indicator <-fredr_series_observations(series_id = "MEDLISPRICA",
        observation_start = as.Date("2019-01-01")) 

indicator[,c(1,3)] %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2019-01-01 524694
2019-02-01 532450
2019-03-01 552421
2019-04-01 569050
2019-05-01 577050
2019-06-01 588050
2019-07-01 582550
2019-08-01 582193
2019-09-01 585050
2019-10-01 580000
2019-11-01 575050
2019-12-01 557550
2020-01-01 567000
2020-02-01 590050
2020-03-01 600025
2020-04-01 590000
2020-05-01 620000
2020-06-01 662230
2020-07-01 698550
2020-08-01 720050
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "grey", alpha = 0.03)+
   
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price in California", 
       subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source: FRED St. Louis Federal Reserve.\nIllustration by @JoeLongSanDiego")+
    theme_economist()

### Median Listing Price in Orange County, CA (MELIPRCOUNTY6059)

indicator <-fredr_series_observations(series_id = "MELIPRCOUNTY6059",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)]) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2020-03-01 959050
2020-04-01 899050
2020-05-01 900050
2020-06-01 932500
2020-07-01 937450
2020-08-01 936550
# plotting data
indicator %>% ggplot() + 
  geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price in Orange County, CA", 
      subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source: FRED St. Louis Federal Reserve\nIllustration by @JoeLongSanDiego")+
    theme_economist()

    #geom_hline(yintercept = median(indicator$value),color="red") +
    #geom_text(aes(y=median(indicator$value), x=min(indicator$date)),label="Median Price",vjust=-1,color="red")

Housing Inventory: Median Listing Price in Ventura County, CA (MEDLISPRI6111)

indicator <-fredr_series_observations(series_id = "MEDLISPRI6111",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)]) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2020-03-01 840050
2020-04-01 799050
2020-05-01 810050
2020-06-01 839500
2020-07-01 850000
2020-08-01 850050
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value),   color = "blue4",size=1) +
  labs(title = "Median Listing Price in Ventura County, CA", 
      subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source: FRED St. Louis Federal Reserve.\nIllustration by @JoeLongSanDiego")+
    theme_economist()

Housing Inventory: Median Listing Price in San Diego County, CA (MEDLISPRI6073)

indicator <-fredr_series_observations(series_id = "MEDLISPRI6073",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)]) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2020-03-01 749950
2020-04-01 725050
2020-05-01 749050
2020-06-01 770050
2020-07-01 792500
2020-08-01 779050
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price in San Diego County, CA", 
      subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source:FRED St. Louis Federal Reserve\nIllustration by @JoeLongSanDiego")+
    theme_economist()

    #geom_hline(yintercept = median(indicator$value),color="red") +
    #geom_text(aes(y=median(indicator$value), x=min(indicator$date)),label="Median Price",vjust=-1,color="red")

Housing Inventory: Median Listing Price in Santa Clara County, CA (MEDLISPRI6085)

indicator <-fredr_series_observations(series_id = "MEDLISPRI6085",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)]) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2020-03-01 1287550
2020-04-01 1249550
2020-05-01 1249050
2020-06-01 1267550
2020-07-01 1266550
2020-08-01 1239938
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price in Santa Clara County, CA", 
      subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source: FRED St. Louis Federal Reserve\nIllustration by @JoeLongSanDiego")+
    theme_economist()

    #geom_hline(yintercept = median(indicator$value),color="red") +
    #geom_text(aes(y=median(indicator$value), x=min(indicator$date)),label="Median Price",vjust=-1,color="red")

Housing Inventory: Median Listing Price in Riverside County, CA (MEDLISPRI6065)

indicator <-fredr_series_observations(series_id = "MEDLISPRI6065",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)]) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2020-03-01 450050
2020-04-01 448050
2020-05-01 449050
2020-06-01 459545
2020-07-01 469050
2020-08-01 479050
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price in Riverside County, CA", 
      subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source: FRED St. Louis Federal Reserve\nIllustration by @JoeLongSanDiego")+
    theme_economist()

Housing Inventory: Median Listing Price in Los Angeles County, CA (MEDLISPRI6037)

indicator <-fredr_series_observations(series_id = "MEDLISPRI6037",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)]) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2020-03-01 959494
2020-04-01 912550
2020-05-01 919050
2020-06-01 991045
2020-07-01 1023550
2020-08-01 1050050
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price in Los Angeles County, CA", 
       subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source: FRED St. Louis Federal Reserve\nIllustration by @JoeLongSanDiego")+
    theme_economist()

    #geom_hline(yintercept = median(indicator$value),color="red") +
    #geom_text(aes(y=median(indicator$value), x=min(indicator$date)),label="Median Price",vjust=-1,color="red")

Housing Inventory: Median Listing Price in San Bernardino County, CA (MEDLISPRI6071)

indicator <-fredr_series_observations(series_id = "MEDLISPRI6071",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)]) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2020-03-01 378495
2020-04-01 375050
2020-05-01 390050
2020-06-01 407400
2020-07-01 422050
2020-08-01 430050
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price in San Bernardino County, CA", 
      subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source: FRED St. Louis Federal Reserve.\nIllustration by @JoeLongSanDiego")+
    theme_economist()

    #geom_hline(yintercept = median(indicator$value),color="red") +
    #geom_text(aes(y=median(indicator$value), x=min(indicator$date)),label="Median Price",vjust=-1,color="red")

Housing Inventory: Median Listing Price in Sacramento County, CA (MEDLISPRI6067)

indicator <-fredr_series_observations(series_id = "MEDLISPRI6067",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)]) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2020-03-01 437703
2020-04-01 435000
2020-05-01 439950
2020-06-01 448296
2020-07-01 450000
2020-08-01 459950
#mean(indicator$value)
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price in Sacramento County, CA", 
       subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source: FRED St. Louis Federal Reserve.\nIllustration by @JoeLongSanDiego")+
    theme_economist()

    #geom_hline(yintercept = median(indicator$value),color="red") +
    #geom_text(aes(y=median(indicator$value), x=min(indicator$date)),label="Median Price",vjust=-1,color="red")

Housing Inventory: Median Listing Price in San Francisco County, CA (MEDLISPRI6075)

  • Top market
indicator <-fredr_series_observations(series_id = "MEDLISPRI6075",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)]) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2020-03-01 1572050
2020-04-01 1590050
2020-05-01 1499850
2020-06-01 1498550
2020-07-01 1455050
2020-08-01 1398050
#mean(indicator$value)
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price in San Francisco County, CA", 
     subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source: FRED St. Louis Federal Reserve.\nIllustration by @JoeLongSanDiego")+
    theme_economist()

    #geom_hline(yintercept = median(indicator$value),color="red") +
    #geom_text(aes(y=median(indicator$value), x=min(indicator$date)),label="Median Price",vjust=-1,color="red")

Housing Inventory: Median Listing Price in Alameda County, CA (MEDLISPRI601)

  • Top Market : North and coastal county
indicator <-fredr_series_observations(series_id = "MEDLISPRI6001",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)]) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2020-03-01 843994
2020-04-01 850050
2020-05-01 898938
2020-06-01 871550
2020-07-01 855050
2020-08-01 825050
#mean(indicator$value)
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price in Alameda County, CA", 
      subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source: FRED St. Louis Federal Reserve.\nIllustration by @JoeLongSanDiego")+
    theme_economist()

Housing Inventory: Median Listing Price in Fresno County, CA (MEDLISPRI6019)

  • Agriculture areas
indicator <-fredr_series_observations(series_id = "MEDLISPRI6019",
        observation_start = as.Date("2010-01-01")) 

tail(indicator[,c(1,3)]) %>% kable() %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
   column_spec(2, T, color = "blue" ) 
date value
2020-03-01 335550
2020-04-01 332450
2020-05-01 339050
2020-06-01 346050
2020-07-01 352549
2020-08-01 350050
#mean(indicator$value)
# plotting data
indicator %>% ggplot() + 
   geom_rect(aes(xmin= dmy('01-01-2020'), xmax=dmy('01-09-2020'), ymin = -Inf, ymax = Inf),
                   fill = "lightyellow", alpha = 0.02)+
  geom_line(mapping = aes(x=date,y=value), color = "blue4",size=1) +
  labs(title = "Median Listing Price in Fresno County, CA", 
      subtitle = str_glue("\n* Caution: Different mixture of housing products each month \n* From {min(indicator$date)} through {max(indicator$date)}"),
       x="Monthly", y="Dollar",
       caption = "Data source: FRED St. Louis Federal Reserve.\nIllustration by @JoeLongSanDiego")+
    theme_economist()