diff --git a/geofield.feeds.inc b/geofield.feeds.inc
index a53a315..97d9d7a 100644
--- a/geofield.feeds.inc
+++ b/geofield.feeds.inc
@@ -142,6 +142,17 @@ function geofield_set_target_simple($source, $entity, $target, $values) {
     $delta++;
   }
 
+  // Compute all the geofield values for each field value.
+  foreach ($field[LANGUAGE_NONE] as $delta => $value) {
+    if (!empty($value['lat']) && !empty($value['lon'])) {
+      $field[LANGUAGE_NONE][$delta] = geofield_compute_values($value, GEOFIELD_INPUT_LAT_LON);
+    }
+    elseif (!empty($value['top']) && !empty($value['right']) && !empty($value['bottom']) && !empty($value['left'])) {
+      $value = array('geom' => $value);
+      $field[LANGUAGE_NONE][$delta] = geofield_compute_values($value, GEOFIELD_INPUT_BOUNDS);
+    }
+  }
+
   $entity->$field_name = $field;
 }