diff --git a/geofield_map/geofield_map.module b/geofield_map/geofield_map.module
index 0e0915f..b8c5ca1 100644
--- a/geofield_map/geofield_map.module
+++ b/geofield_map/geofield_map.module
@@ -38,6 +38,7 @@
         'geofield_map_scrollwheel' => 0,
         'geofield_map_draggable' => 0,
         'geofield_map_streetview_show' => 0,
+        'geofield_map_google_link' => 0,
       ),
     ),
   );
@@ -63,7 +64,8 @@
     if (!empty($geometry)) {
       $datum = json_decode($geometry->out('json'));
       $datum->properties = array(
-        'description' => entity_label($entity_type, $entity),
+        'description' => ($settings['geofield_map_google_link'] == 1 ?
+            l(entity_label($entity_type, $entity), 'http://maps.google.com/maps?t=h&q=loc:' . $geometry->coords[1] . ',' . $geometry->coords[0] . '&z=' . $settings['geofield_map_zoom']) : entity_label($entity_type, $entity)),
       );
       $data[] = $datum;
     }
@@ -76,7 +78,7 @@
       $map_id => array(
         'map_settings' => $map_settings,
         'data' => count($data) == 1 ?
-          $data[0] :
+            $data[0] :
           array( 'type' => 'GeometryCollection', 'geometries' => $data),
 
       ),
@@ -163,6 +165,9 @@
   if ($settings['geofield_map_streetview_show']) {
     $summary[] = t('Show streetview button: @yn', array('@yn' => ($settings['geofield_map_streetview_show'] ? 'Yes' : 'No')));
   }
+  if ($settings['geofield_map_google_link']) {
+    $summary[] = t('Link to google maps');
+  }
 
   return implode('<br />', $summary);
 
@@ -222,6 +227,13 @@
     '#return_value' => 1,
   );
 
+  $element['geofield_map_google_link'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Link to google maps'),
+    '#default_value' => $settings['geofield_map_google_link'],
+    '#return_value' => 1,
+  );
+
   $mapopts = array('map' => t('Standard street map'));
   if ($settings['geofield_map_baselayers_satellite']) {
     $mapopts['satellite'] =  t('Standard satellite map');
