diff --git mappers/content.inc mappers/content.inc
index eaf1946..854efb6 100644
--- mappers/content.inc
+++ mappers/content.inc
@@ -41,8 +41,35 @@ function content_feeds_set_target($node, $target, $value) {
 
   $field = isset($node->$target) ? $node->$target : array();
 
-  // Handle multiple value fields.
-  if (is_array($value)) {
+  if (empty($value)) {
+    $info = content_types($node->type);
+    $fields = array();
+    if (!empty($info['fields']) && isset($info['fields'][$target])) {
+      $field_definition = $info['fields'][$target];
+
+      // Copied from Content.module's includes/content.node_form.inc
+
+      $function = $field_definition['widget']['module'] .'_widget';
+      if (function_exists($function) && content_callback('widget', 'default value', $field_definition) != CONTENT_CALLBACK_NONE) {
+        // If a module wants to insert custom default values here,
+        // it should provide a hook_default_value() function to call,
+        // otherwise the content module's content_default_value() function
+        // will be used.
+        $form = $form_state = array();
+        if (content_callback('widget', 'default value', $field_definition) == CONTENT_CALLBACK_CUSTOM) {
+          $callback = $field_definition['widget']['module'] .'_default_value';
+          if (function_exists($callback)) {
+            // We have no $form or $form_state so we would need to emulate those?
+            // $field = $callback($form, $form_state, $field_definition, 0);
+          }
+        }
+        else {
+          $field = content_default_value($form, $form_state, $field_definition, 0);
+        }
+      }
+    }
+  }
+  elseif (is_array($value)) {
     $i = 0;
     foreach ($value as $v) {
       if (!is_array($v) && !is_object($v)) {
