Housing Market Update October 2011 National and Local
Housing Starts in U.S. Declined 0.3% in October
//
Nov 17, 2011 8:43 AM ETThu Nov 17 13:43:38 GMT 2011<span id=”__mce” data-mce-type=”bookmark”></span>
Builders broke ground on more homes than forecast in October and construction permits climbed to the highest level since March 2010, signs that housing may become less of a laggard in the third year of the U.S. recovery.
Starts decreased 0.3 percent to a 628,000 annual rate from September’s 630,000 pace that was slower than previously reported, Commerce Department figures showed today in Washington. The median estimate of economists surveyed by Bloomberg News called for a drop to 610,000. Building permits, a proxy for future construction, increased 10.9 percent.
Single-Family Homes
New construction of single-family houses climbed 3.9 percent to a three-month high 430,000 rate from the prior month.
Work on multifamily homes, such as townhouses and apartment buildings, decreased 8.3 percent to an annual rate of 198,000 after surging 35 percent a month earlier.
Recent gains in homebuilding have been led by a jump in construction of apartments and other multifamily dwellings as foreclosures turned more Americans into renters from buyers.
My Take –
The climb in apartment buildings is a clear indicator as to where the market is heading. Remember : These are national numbers. Here are the local numbers for Howard, Carroll, Anne Arundel, Baltimore, and Harford County:
Markets Statistis by RBI:
.
.
Howard County, MD
Statistic | Values | YoY | MoM |
---|---|---|---|
Total Sold Dollar Volume | $76,934,720 | -11.41% | -16.49% |
Closed Sales | 208 | -5.45% | -5.88% |
Median Sold Price | $330,750 | -6.7% | -12.44% |
Avg Sold Price | $369,878 | -6.3% | -11.27% |
Avg Days on Market | 87 days | +2.35% | -6.45% |
Avg Sold to Orig List Ratio | 92.51% | -0.71% | -0.67% |
.
Anne Arundel County, MD
Statistic | Values | YoY | MoM |
---|---|---|---|
Total Sold Dollar Volume | $119,453,226 | -8.77% | -19.64% |
Closed Sales | 369 | +0.82% | -14.39% |
Median Sold Price | $275,000 | -8.3% | +1.85% |
Avg Sold Price | $323,721 | -9.51% | -6.14% |
Avg Days on Market | 123 days | +6.96% | +6.03% |
Avg Sold to Orig List Ratio | 91.33% | +0.78% | +0.37% |
Baltimore County, MD
Statistic | Values | YoY | MoM |
---|---|---|---|
Total Sold Dollar Volume | $109,379,375 | +13.92% | -24.38% |
Closed Sales | 467 | +20.05% | -14.15% |
Median Sold Price | $195,000 | -8.02% | -2.5% |
Avg Sold Price | $234,217 | -5.11% | -11.92% |
Avg Days on Market | 121 days | +2.54% | -0.82% |
Avg Sold to Orig List Ratio | 88.59% | -0.56% | -0.92% |
..
Harford County, MD
Statistic | Values | YoY | MoM |
---|---|---|---|
Total Sold Dollar Volume | $35,639,127 | -29.74% | -21.11% |
Closed Sales | 142 | -29.35% | -18.39% |
Median Sold Price | $225,000 | -5.26% | -5.86% |
Avg Sold Price | $250,980 | -0.54% | -3.33% |
Avg Days on Market | 115 days | +6.48% | -8.73% |
Avg Sold to Orig List Ratio | 91.76% | +0.19% | +0.81% |
Carroll County, MD
Statistic | Values | YoY | MoM |
---|---|---|---|
Total Sold Dollar Volume | $27,744,136 | -4.11% | -27.82% |
Closed Sales | 100 | -1.96% | -28.57% |
Median Sold Price | $241,925 | +0.8% | -3.19% |
Avg Sold Price | $277,441 | -2.19% | +1.06% |
Avg Days on Market | 136 days | +33.33% | -15.53% |
Avg Sold to Orig List Ratio | 91.16% | +0.05% | +2.9% |
About Chris Weymouth & The Weymouth Group, LLC:
Chris Weymouth, Director, Certified Luxury Home Marketing Specialist, CLHMS and Debbie Weymouth, Manager, have marketed and sold over 4000 homes in Maryland since 1983. Expertly trained and award winning agents, they are leaders for The Weymouth Group at Keller Williams that has been recognized by their peers as one of the best in the business. Chris Weymouth is ranked # 1 at Keller Williams Select Realtors, top 1% in Howard County and Maryland. Serving Central Maryland and all our friends and family for almost 50 years. Need a Luxury Home Marketing Specialist in Howard, Carroll, Baltimore, Anne Arundel, Prince Georges or Harford County? Then call Chris at 443-280-1922 or email at chrisweymouth@kw.com.
// <![CDATA[
/* */
// ]]>
// <![CDATA[
/*
// ]]>
// mouseClickThreshold) {
return;
}
mouseDownLocation = new VEPixel(x, y);
clickQuery();
});
zoomToLayer();
setLegends(‘msp’);
});
function zoomToLayer() {
function successCallback(json) {
var xMin = json.Layer[‘xMin’];
var xMax = json.Layer[‘xMax’];
var yMin = json.Layer[‘yMin’];
var yMax = json.Layer[‘yMax’];
var geometry = “POLYGON ((“;
geometry += xMin + ” ” + yMin;
geometry += “,” + xMin + ” ” + yMax;
geometry += “,” + xMax + ” ” + yMax;
geometry += “,” + xMax + ” ” + yMin;
geometry += “,” + xMin + ” ” + yMin;
geometry += “))”;
var shape = Dmp.Core.WktTools.toShape(geometry);
var points = shape.GetPoints();
map.SetMapView(points);
}
function errorCallback(json) {
}
var layer = rbiMap.folder+”/”+rbiMap.dataset;
var url = “http://parcelstream.com/layerinfo.aspx?layer=”+layer;
Dmp.Env.Connections[“SS”].getJson(url, successCallback, errorCallback);
}
function clickQuery() {
var LL = map.PixelToLatLong(new VEPixel(mouseDownLocation.x, mouseDownLocation.y));
function successCallback(json) {
if (map.getDMPLayerById(“highlightLayer”)) map.removeLayer(“highlightLayer”);
var bbox = json.Response.Results;
//Query succeeded. get extents.
var recordSet = json.Response.Results;
var statRecord = null;
var bbox = null;
statRecord = recordSet.Data.Row;
veShapeLayer.DeleteAllShapes();
var output = “”;
output += ”
“+ (rbiMap.locType == ‘c’ ? statRecord[‘ZIP_CODE’] : rbiMap.countyNames[statRecord[‘COUNTY_FIPS’]]) +”
“;
output += ”
switch (rbiMap.currentMetric) {
case ‘slpr’:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “n/a” : (Math.round(statRecord[rbiMap.dataFields[rbiMap.currentMetric]]*10000)/100)+”%”;
break;
case ‘msp’:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “” : ‘$’;
default:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “n/a” : addSep(statRecord[rbiMap.dataFields[rbiMap.currentMetric]]);
}
output += ” in “+rbiMap.thisMonth+”
“;
output += ”
“;
output += ”
“;
if (rbiMap.locType == ‘c’) {
output += ”
More info on “+statRecord[‘ZIP_CODE’]+”
“;
}
else {
var countyName = rbiMap.countyNames[statRecord[‘COUNTY_FIPS’]];
output += ”
More info on “+countyName+”
“;
}
// for (var name in statRecord) {
// if(name.indexOf(‘_’) != 0)
// output += name + “: ” + statRecord[name] + ”
“;
// }
var veShape = null;
veShape = Dmp.Core.WktTools.toShape(statRecord[“GEOMETRY”]);
veShape.HideIcon();
veShape.SetCustomIcon(”
“);
veShape.SetDescription(output);
veShapeLayer.AddShape(veShape);
window.ero.setBoundingArea(null);
map.ShowInfoBox(veShape);
}
function errorCallback(err) {
//error with getByGeometry call
}
var url = “GetByGeometry.aspx?returnGeoType=3&dataSource=”+rbiMap.folder+”/”+rbiMap.dataset
+ “&geo=POINT(” + LL.Longitude + ” ” + LL.Latitude + “)”
+ “&fields=*”;
Dmp.Env.Connections[“SS”].getJson(url, successCallback, errorCallback);
} //clickQuery
function toggleLayer(layer, obj) {
debugger;
map.getDmpLayerById(layer).attr(“visibility”, obj.checked);
map.getDmpLayerById(layer).refresh();
}
function swapSLD(newSLD) {
var layer = map.getDMPLayerById(“County”);
var child = layer.getChildById(“CountyStats”);
child.style = newSLD;
if (map.getDMPLayerById(“highlightLayer”)) map.removeLayer(“highlightLayer”);
layer.draw();
}
function addSep(val) {
output = val % 1000;
while (val / 1000 > 1) {
var currGroup = val % 1000;
output = currGroup < 100 ? (currGroup
//
// mouseClickThreshold) {
return;
}
mouseDownLocation = new VEPixel(x, y);
clickQuery();
});
zoomToLayer();
setLegends(‘msp’);
});
function zoomToLayer() {
function successCallback(json) {
var xMin = json.Layer[‘xMin’];
var xMax = json.Layer[‘xMax’];
var yMin = json.Layer[‘yMin’];
var yMax = json.Layer[‘yMax’];
var geometry = “POLYGON ((“;
geometry += xMin + ” ” + yMin;
geometry += “,” + xMin + ” ” + yMax;
geometry += “,” + xMax + ” ” + yMax;
geometry += “,” + xMax + ” ” + yMin;
geometry += “,” + xMin + ” ” + yMin;
geometry += “))”;
var shape = Dmp.Core.WktTools.toShape(geometry);
var points = shape.GetPoints();
map.SetMapView(points);
}
function errorCallback(json) {
}
var layer = rbiMap.folder+”/”+rbiMap.dataset;
var url = “http://parcelstream.com/layerinfo.aspx?layer=”+layer;
Dmp.Env.Connections[“SS”].getJson(url, successCallback, errorCallback);
}
function clickQuery() {
var LL = map.PixelToLatLong(new VEPixel(mouseDownLocation.x, mouseDownLocation.y));
function successCallback(json) {
if (map.getDMPLayerById(“highlightLayer”)) map.removeLayer(“highlightLayer”);
var bbox = json.Response.Results;
//Query succeeded. get extents.
var recordSet = json.Response.Results;
var statRecord = null;
var bbox = null;
statRecord = recordSet.Data.Row;
veShapeLayer.DeleteAllShapes();
var output = “”;
output += ”
“+ (rbiMap.locType == ‘c’ ? statRecord[‘ZIP_CODE’] : rbiMap.countyNames[statRecord[‘COUNTY_FIPS’]]) +”
“;
output += ”
switch (rbiMap.currentMetric) {
case ‘slpr’:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “n/a” : (Math.round(statRecord[rbiMap.dataFields[rbiMap.currentMetric]]*10000)/100)+”%”;
break;
case ‘msp’:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “” : ‘$’;
default:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “n/a” : addSep(statRecord[rbiMap.dataFields[rbiMap.currentMetric]]);
}
output += ” in “+rbiMap.thisMonth+”
“;
output += ”
“;
output += ”
“;
if (rbiMap.locType == ‘c’) {
output += ”
More info on “+statRecord[‘ZIP_CODE’]+”
“;
}
else {
var countyName = rbiMap.countyNames[statRecord[‘COUNTY_FIPS’]];
output += ”
More info on “+countyName+”
“;
}
// for (var name in statRecord) {
// if(name.indexOf(‘_’) != 0)
// output += name + “: ” + statRecord[name] + ”
“;
// }
var veShape = null;
veShape = Dmp.Core.WktTools.toShape(statRecord[“GEOMETRY”]);
veShape.HideIcon();
veShape.SetCustomIcon(”
“);
veShape.SetDescription(output);
veShapeLayer.AddShape(veShape);
window.ero.setBoundingArea(null);
map.ShowInfoBox(veShape);
}
function errorCallback(err) {
//error with getByGeometry call
}
var url = “GetByGeometry.aspx?returnGeoType=3&dataSource=”+rbiMap.folder+”/”+rbiMap.dataset
+ “&geo=POINT(” + LL.Longitude + ” ” + LL.Latitude + “)”
+ “&fields=*”;
Dmp.Env.Connections[“SS”].getJson(url, successCallback, errorCallback);
} //clickQuery
function toggleLayer(layer, obj) {
debugger;
map.getDmpLayerById(layer).attr(“visibility”, obj.checked);
map.getDmpLayerById(layer).refresh();
}
function swapSLD(newSLD) {
var layer = map.getDMPLayerById(“County”);
var child = layer.getChildById(“CountyStats”);
child.style = newSLD;
if (map.getDMPLayerById(“highlightLayer”)) map.removeLayer(“highlightLayer”);
layer.draw();
}
function addSep(val) {
output = val % 1000;
while (val / 1000 > 1) {
var currGroup = val % 1000;
output = currGroup < 100 ? (currGroup
//
// mouseClickThreshold) {
return;
}
mouseDownLocation = new VEPixel(x, y);
clickQuery();
});
zoomToLayer();
setLegends(‘msp’);
});
function zoomToLayer() {
function successCallback(json) {
var xMin = json.Layer[‘xMin’];
var xMax = json.Layer[‘xMax’];
var yMin = json.Layer[‘yMin’];
var yMax = json.Layer[‘yMax’];
var geometry = “POLYGON ((“;
geometry += xMin + ” ” + yMin;
geometry += “,” + xMin + ” ” + yMax;
geometry += “,” + xMax + ” ” + yMax;
geometry += “,” + xMax + ” ” + yMin;
geometry += “,” + xMin + ” ” + yMin;
geometry += “))”;
var shape = Dmp.Core.WktTools.toShape(geometry);
var points = shape.GetPoints();
map.SetMapView(points);
}
function errorCallback(json) {
}
var layer = rbiMap.folder+”/”+rbiMap.dataset;
var url = “http://parcelstream.com/layerinfo.aspx?layer=”+layer;
Dmp.Env.Connections[“SS”].getJson(url, successCallback, errorCallback);
}
function clickQuery() {
var LL = map.PixelToLatLong(new VEPixel(mouseDownLocation.x, mouseDownLocation.y));
function successCallback(json) {
if (map.getDMPLayerById(“highlightLayer”)) map.removeLayer(“highlightLayer”);
var bbox = json.Response.Results;
//Query succeeded. get extents.
var recordSet = json.Response.Results;
var statRecord = null;
var bbox = null;
statRecord = recordSet.Data.Row;
veShapeLayer.DeleteAllShapes();
var output = “”;
output += ”
“+ (rbiMap.locType == ‘c’ ? statRecord[‘ZIP_CODE’] : rbiMap.countyNames[statRecord[‘COUNTY_FIPS’]]) +”
“;
output += ”
switch (rbiMap.currentMetric) {
case ‘slpr’:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “n/a” : (Math.round(statRecord[rbiMap.dataFields[rbiMap.currentMetric]]*10000)/100)+”%”;
break;
case ‘msp’:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “” : ‘$’;
default:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “n/a” : addSep(statRecord[rbiMap.dataFields[rbiMap.currentMetric]]);
}
output += ” in “+rbiMap.thisMonth+”
“;
output += ”
“;
output += ”
“;
if (rbiMap.locType == ‘c’) {
output += ”
More info on “+statRecord[‘ZIP_CODE’]+”
“;
}
else {
var countyName = rbiMap.countyNames[statRecord[‘COUNTY_FIPS’]];
output += ”
More info on “+countyName+”
“;
}
// for (var name in statRecord) {
// if(name.indexOf(‘_’) != 0)
// output += name + “: ” + statRecord[name] + ”
“;
// }
var veShape = null;
veShape = Dmp.Core.WktTools.toShape(statRecord[“GEOMETRY”]);
veShape.HideIcon();
veShape.SetCustomIcon(”
“);
veShape.SetDescription(output);
veShapeLayer.AddShape(veShape);
window.ero.setBoundingArea(null);
map.ShowInfoBox(veShape);
}
function errorCallback(err) {
//error with getByGeometry call
}
var url = “GetByGeometry.aspx?returnGeoType=3&dataSource=”+rbiMap.folder+”/”+rbiMap.dataset
+ “&geo=POINT(” + LL.Longitude + ” ” + LL.Latitude + “)”
+ “&fields=*”;
Dmp.Env.Connections[“SS”].getJson(url, successCallback, errorCallback);
} //clickQuery
function toggleLayer(layer, obj) {
debugger;
map.getDmpLayerById(layer).attr(“visibility”, obj.checked);
map.getDmpLayerById(layer).refresh();
}
function swapSLD(newSLD) {
var layer = map.getDMPLayerById(“County”);
var child = layer.getChildById(“CountyStats”);
child.style = newSLD;
if (map.getDMPLayerById(“highlightLayer”)) map.removeLayer(“highlightLayer”);
layer.draw();
}
function addSep(val) {
output = val % 1000;
while (val / 1000 > 1) {
var currGroup = val % 1000;
output = currGroup < 100 ? (currGroup
//
// mouseClickThreshold) {
return;
}
mouseDownLocation = new VEPixel(x, y);
clickQuery();
});
zoomToLayer();
setLegends(‘msp’);
});
function zoomToLayer() {
function successCallback(json) {
var xMin = json.Layer[‘xMin’];
var xMax = json.Layer[‘xMax’];
var yMin = json.Layer[‘yMin’];
var yMax = json.Layer[‘yMax’];
var geometry = “POLYGON ((“;
geometry += xMin + ” ” + yMin;
geometry += “,” + xMin + ” ” + yMax;
geometry += “,” + xMax + ” ” + yMax;
geometry += “,” + xMax + ” ” + yMin;
geometry += “,” + xMin + ” ” + yMin;
geometry += “))”;
var shape = Dmp.Core.WktTools.toShape(geometry);
var points = shape.GetPoints();
map.SetMapView(points);
}
function errorCallback(json) {
}
var layer = rbiMap.folder+”/”+rbiMap.dataset;
var url = “http://parcelstream.com/layerinfo.aspx?layer=”+layer;
Dmp.Env.Connections[“SS”].getJson(url, successCallback, errorCallback);
}
function clickQuery() {
var LL = map.PixelToLatLong(new VEPixel(mouseDownLocation.x, mouseDownLocation.y));
function successCallback(json) {
if (map.getDMPLayerById(“highlightLayer”)) map.removeLayer(“highlightLayer”);
var bbox = json.Response.Results;
//Query succeeded. get extents.
var recordSet = json.Response.Results;
var statRecord = null;
var bbox = null;
statRecord = recordSet.Data.Row;
veShapeLayer.DeleteAllShapes();
var output = “”;
output += ”
“+ (rbiMap.locType == ‘c’ ? statRecord[‘ZIP_CODE’] : rbiMap.countyNames[statRecord[‘COUNTY_FIPS’]]) +”
“;
output += ”
switch (rbiMap.currentMetric) {
case ‘slpr’:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “n/a” : (Math.round(statRecord[rbiMap.dataFields[rbiMap.currentMetric]]*10000)/100)+”%”;
break;
case ‘msp’:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “” : ‘$’;
default:
output += (statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == 55537 || statRecord[rbiMap.dataFields[rbiMap.currentMetric]] == -9999) ? “n/a” : addSep(statRecord[rbiMap.dataFields[rbiMap.currentMetric]]);
}
output += ” in “+rbiMap.thisMonth+”
“;
output += ”
“;
output += ”
“;
if (rbiMap.locType == ‘c’) {
output += ”
More info on “+statRecord[‘ZIP_CODE’]+”
“;
}
else {
var countyName = rbiMap.countyNames[statRecord[‘COUNTY_FIPS’]];
output += ”
More info on “+countyName+”
“;
}
// for (var name in statRecord) {
// if(name.indexOf(‘_’) != 0)
// output += name + “: ” + statRecord[name] + ”
“;
// }
var veShape = null;
veShape = Dmp.Core.WktTools.toShape(statRecord[“GEOMETRY”]);
veShape.HideIcon();
veShape.SetCustomIcon(”
“);
veShape.SetDescription(output);
veShapeLayer.AddShape(veShape);
window.ero.setBoundingArea(null);
map.ShowInfoBox(veShape);
}
function errorCallback(err) {
//error with getByGeometry call
}
var url = “GetByGeometry.aspx?returnGeoType=3&dataSource=”+rbiMap.folder+”/”+rbiMap.dataset
+ “&geo=POINT(” + LL.Longitude + ” ” + LL.Latitude + “)”
+ “&fields=*”;
Dmp.Env.Connections[“SS”].getJson(url, successCallback, errorCallback);
} //clickQuery
function toggleLayer(layer, obj) {
debugger;
map.getDmpLayerById(layer).attr(“visibility”, obj.checked);
map.getDmpLayerById(layer).refresh();
}
function swapSLD(newSLD) {
var layer = map.getDMPLayerById(“County”);
var child = layer.getChildById(“CountyStats”);
child.style = newSLD;
if (map.getDMPLayerById(“highlightLayer”)) map.removeLayer(“highlightLayer”);
layer.draw();
}
function addSep(val) {
output = val % 1000;
while (val / 1000 > 1) {
var currGroup = val % 1000;
output = currGroup < 100 ? (currGroup
//