diff --git a/includes/behaviors/js/openlayers_behavior_zoomtolayer.js b/includes/behaviors/js/openlayers_behavior_zoomtolayer.js
index 97deafe..f8da281 100644
--- a/includes/behaviors/js/openlayers_behavior_zoomtolayer.js
+++ b/includes/behaviors/js/openlayers_behavior_zoomtolayer.js
@@ -19,12 +19,12 @@
             // source, but for now, just check KML
             if (layers[i].layer_handler == 'kml') {
               layers[i].events.register("loadend", layers[i], function() {
-                layerextent = layers[i].getDataExtent();
+                layerextent = layers[i].getDataExtent().scale(data.map.behaviors['openlayers_behavior_zoomtolayer'].zoomtolayer_scale);
                 map.zoomToExtent(layerextent);
               });
             }
             else {
-              layerextent = layers[i].getDataExtent();
+              layerextent = layers[i].getDataExtent().scale(data.map.behaviors['openlayers_behavior_zoomtolayer'].zoomtolayer_scale);
               // Check for valid layer extent
               if (layerextent != null) {
                 map.zoomToExtent(layerextent);
@@ -41,4 +41,4 @@
       }
   }
 };
-})(jQuery);
\ No newline at end of file
+})(jQuery);
diff --git a/includes/behaviors/openlayers_behavior_zoomtolayer.inc b/includes/behaviors/openlayers_behavior_zoomtolayer.inc
index 3b89540..6c14b4c 100644
--- a/includes/behaviors/openlayers_behavior_zoomtolayer.inc
+++ b/includes/behaviors/openlayers_behavior_zoomtolayer.inc
@@ -26,6 +26,12 @@ class openlayers_behavior_zoomtolayer extends openlayers_behavior {
         '#description' => t('Select layer to zoom to when the map is loaded'),
         '#default_value' => isset($defaults['zoomtolayer']) ? $defaults['zoomtolayer'] : NULL
       ),
+      'zoomtolayer_scale' => array(
+        '#type' => 'textfield',
+        '#size' => 5,
+        '#description' => t('Additional scaling to apply to the calculated bounds before zooming.'),
+        '#default_value' => isset($defaults['zoomtolayer_scale']) ? $defaults['zoomtolayer_scale'] : 1
+      ),
       'point_zoom_level' => array(
         '#type' => 'textfield',
         '#default_value' => (isset($defaults['point_zoom_level'])) ?
