diff --git a/twitter.module b/twitter.module
index ec90978..a806e5e 100644
--- a/twitter.module
+++ b/twitter.module
@@ -93,6 +93,17 @@ function twitter_theme() {
     'twitter_account_list_form' => array(
       'render element' => 'form',
     ),
+    'twitter_profile_image' => array(
+      'variables' => array(
+        'style_name' => NULL,
+        'path' => NULL,
+        'width' => NULL,
+        'height' => NULL,
+        'alt' => '',
+        'title' => NULL,
+        'attributes' => array(),
+      ),
+    ),
     'twitter_status' => array(
       'variables' => array(
         'status' => NULL,
@@ -110,6 +121,25 @@ function twitter_theme() {
 }
 
 /**
+ * Theme a Twitter Profile Image using a configured style if available.
+ */
+function theme_twitter_profile_image($variables) {
+  if (module_exists('imagecache_external')) {
+    if (isset($variables['style_name'])) {
+      return theme('imagecache_external', $variables);
+    }
+
+    $default_style_name = variable_get('twitter_default_image_style', '');
+    if ($default_style_name) {
+      $variables['style_name'] = $default_style_name;
+      return theme('imagecache_external', $variables);
+    }
+  }
+
+  return theme('image', $variables);
+}
+
+/**
  * Default callback for theme('twitter_user_accounts');
  *
  * Renders a list of Twitter accounts for the user profile page.
diff --git a/twitter.pages.inc b/twitter.pages.inc
index feba5a0..ff30da2 100644
--- a/twitter.pages.inc
+++ b/twitter.pages.inc
@@ -25,6 +25,16 @@ function twitter_admin_form($form, &$form_state) {
     ),
   );
 
+  if (module_exists('imagecache_external')) {
+    $form['twitter_default_image_style'] = array(
+      '#title' => t('Default image style for profile pictures'),
+      '#type' => 'select',
+      '#options' => image_style_options(TRUE),
+      '#default_value' => variable_get('twitter_default_image_style', ''),
+      '#description' => t('Twitter user profile images will use this image style.'),
+    );
+  }
+
   $form['oauth'] = array(
     '#type' => 'fieldset',
     '#title' => t('OAuth Settings'),
@@ -175,7 +185,7 @@ function _twitter_account_list_row($account) {
   );
 
   $form['image'] = array(
-    '#markup' => theme('image', array('path' => $account->profile_image_url)),
+    '#markup' => theme('twitter_profile_image', array('path' => $account->profile_image_url)),
   );
 
   $form['visible_name'] = array(
diff --git a/twitter_views_field_handlers.inc b/twitter_views_field_handlers.inc
index a51e9fb..3e12f5b 100644
--- a/twitter_views_field_handlers.inc
+++ b/twitter_views_field_handlers.inc
@@ -81,9 +81,27 @@ class twitter_views_handler_field_xss extends views_handler_field {
  * Field handler to provide simple renderer that turns a URL into a clickable link.
  */
 class twitter_views_handler_field_profile_image extends views_handler_field {
+  function option_definition() {
+    $options = parent::option_definition();
+    $options['image_style'] = array('default' => '');
+    return $options;
+  }
+
+  function options_form(&$form, &$form_state) {
+    parent::options_form($form, $form_state);
+    $form['image_style'] = array(
+      '#title' => t('Image style for profile pictures'),
+      '#type' => 'select',
+      '#options' => image_style_options(TRUE),
+      '#default_value' => $this->options['image_style'],
+      '#description' => t('Twitter user profile images will use this image style.'),
+    );
+    return $form;
+  }
+
   function render($values) {
     $value = $values->{$this->field_alias};
-    return theme('image', array('path' => $value));
+    return theme('twitter_profile_image', array('path' => $value, 'style_name' => $this->options['image_style']));
   }
 }
 
