diff --git a/includes/image.inc b/includes/image.inc
index f3271a6..4998cdf 100644
--- a/includes/image.inc
+++ b/includes/image.inc
@@ -57,6 +57,7 @@ function template_preprocess_image_insert_image(&$vars) {
   image_style_transform_dimensions($vars['style_name'], $vars);
 
   $vars['uri'] = image_style_path($vars['style_name'], $vars['file']->uri);
-  $vars['url'] = insert_create_url($vars['uri']);
+  $absolute = isset($vars['widget']['settings']['insert_absolute']) ? $vars['widget']['settings']['insert_absolute'] : NULL;
+  $vars['url'] = insert_create_url($vars['uri'], $absolute);
   $vars['class'] = !empty($vars['widget']['settings']['insert_class']) ? $vars['widget']['settings']['insert_class'] : '';
 }
diff --git a/includes/insert.inc b/includes/insert.inc
index 048a096..ea81870 100644
--- a/includes/insert.inc
+++ b/includes/insert.inc
@@ -51,7 +51,8 @@ function insert_insert_content($item, $style, $widget) {
  */
 function template_preprocess_insert_image(&$vars) {
   $vars['file'] = file_load($vars['item']['fid']);
-  $vars['url'] = insert_create_url($vars['file']->uri);
+  $absolute = isset($vars['widget']['settings']['insert_absolute']) ? $vars['widget']['settings']['insert_absolute'] : NULL;
+  $vars['url'] = insert_create_url($vars['file']->uri, $absolute);
   $vars['class'] = !empty($vars['widget']['settings']['insert_class']) ? $vars['widget']['settings']['insert_class'] : '';
   $image_info = @image_get_info($vars['file']->uri);
   $vars['width'] = isset($image_info['width']) ? $image_info['width'] : '';
@@ -63,7 +64,8 @@ function template_preprocess_insert_image(&$vars) {
  */
 function template_preprocess_insert_link(&$vars) {
   $vars['file'] = file_load($vars['item']['fid']);
-  $vars['url'] = insert_create_url($vars['file']->uri);
+  $absolute = isset($vars['widget']['settings']['insert_absolute']) ? $vars['widget']['settings']['insert_absolute'] : NULL;
+  $vars['url'] = insert_create_url($vars['file']->uri, $absolute);
   $vars['class'] = !empty($vars['widget']['settings']['insert_class']) ? $vars['widget']['settings']['insert_class'] : '';
   $vars['name'] = $vars['file']->filename;
 }
@@ -73,7 +75,8 @@ function template_preprocess_insert_link(&$vars) {
  */
 function template_preprocess_insert_icon_link(&$vars) {
   $vars['file'] = file_load($vars['item']['fid']);
-  $vars['url'] = insert_create_url($vars['file']->uri);
+  $absolute = isset($vars['widget']['settings']['insert_absolute']) ? $vars['widget']['settings']['insert_absolute'] : NULL;
+  $vars['url'] = insert_create_url($vars['file']->uri, $absolute);
   $vars['class'] = !empty($vars['widget']['settings']['insert_class']) ? $vars['widget']['settings']['insert_class'] : '';
   $vars['name'] = $vars['file']->filename;
   $vars['type'] = $vars['file']->filemime .'; length='. $vars['file']->filesize;
diff --git a/insert.module b/insert.module
index f9f63a4..ac85797 100644
--- a/insert.module
+++ b/insert.module
@@ -263,6 +263,7 @@ function insert_form_field_ui_field_edit_form_alter(&$form, $form_state) {
 function insert_field_widget_info_alter(&$info) {
   $settings = array(
     'insert' => 0,
+    'insert_absolute' => variable_get('insert_absolute_paths', FALSE),
     'insert_styles' => array('auto'),
     'insert_default' => array('auto'),
     'insert_class' => '',
@@ -301,6 +302,14 @@ function insert_field_widget_settings_form($field, $instance) {
     '#weight' => -10,
   );
 
+  $form['insert']['insert_absolute'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Use absolute paths'),
+    '#default_value' => isset($settings['insert_absolute']) ? $settings['insert_absolute'] : variable_get('insert_absolute_paths', FALSE),
+    '#description' => t('Includes the full URL prefix "@base_url" in all links and image tags.', array('@base_url' => $GLOBALS['base_url'])),
+    '#weight' => -9,
+  );
+
   $form['insert']['insert_styles'] = array(
     '#title' => t('Enabled insert styles'),
     '#type' => 'checkboxes',
@@ -378,13 +387,8 @@ function theme_insert_field_widget_settings_styles($variables) {
  * will consistently use absolute or relative URLs, depending on the Insert
  * setting.
  */
-function insert_create_url($uri) {
-  // This variable has no configuration location. It may be set by placing
-  // $conf['insert_absolute_paths'] = FALSE;
-  // in the site settings.php file, or by manually running variable_set().
-  // For reasons why this might not do what you want and why there's no UI
-  // see http://drupal.org/node/640352.
-  $absolute = variable_get('insert_absolute_paths', TRUE);
+function insert_create_url($uri, $absolute = NULL) {
+  $absolute = isset($absolute) ? $absolute : variable_get('insert_absolute_paths', FALSE);
   $url = file_create_url($uri);
   if (!$absolute && strpos($url, $GLOBALS['base_url']) === 0) {
     $url = base_path() . ltrim(str_replace($GLOBALS['base_url'], '', $url), '/');
