diff --git a/quicktabs.module b/quicktabs.module
index 2278686..c6815aa 100644
--- a/quicktabs.module
+++ b/quicktabs.module
@@ -175,7 +175,7 @@ function quicktabs_block_view($delta = '') {
  *  array would be array(array('title' => 'custom', 'contents' => array('#markup' =>
  *  t('Some markup'), 'weight' => 5));
  *
- * @return A render array that can be used as block content in hook_block_view 
+ * @return A render array that can be used as block content in hook_block_view
  *  (see quicktabs_block_view()), but can also just be added to the page array
  *  during hook_page_alter, or output anywhere else where it's sure to get
  *  passed through drupal_render().
@@ -194,6 +194,9 @@ function quicktabs_build_quicktabs($name, $settings = array(), $custom_tabs = ar
     // alphanumeric name.
     $name = preg_replace('/[^[a-zA-Z]_]/', '_', $name);
     $contents = array();
+    drupal_alter('quicktabs', $info);
+    $info = (array) $info;
+    $settings = array_merge($info, $settings);
   }
   else {
     // If $name doesn't correspond to an existing Quicktabs instance, and there
@@ -216,10 +219,10 @@ function quicktabs_build_quicktabs($name, $settings = array(), $custom_tabs = ar
     if ($item['type'] != 'prerendered') {
       ctools_plugin_load_class('quicktabs', 'contents', $item['type'], 'handler');
     }
-  
+
     // Add item's weight to our weights array so that we can then sort by weight.
     $weight[$key] = $item['weight'];
-    
+
     // Make sure we're not going to try to load the same QuickSet instance
     // inside itself.
     if ($item['type'] == 'qtabs' && $item['machine_name'] == $name) {
@@ -261,7 +264,7 @@ function quicktabs_ajax($name, $index, $type) {
   array_unshift($variable_args, $name);
 
   $data = QuickSet::ajaxRenderContent($type, $variable_args);
-  
+
   $commands = array();
   $tabpage_id = 'quicktabs-tabpage-'. $name .'-' . $index;
   $commands[] = ajax_command_append('#quicktabs-container-'. $name, '<div id="' . $tabpage_id .'" class="quicktabs-tabpage">'. $data .'</div>');
@@ -326,7 +329,7 @@ function quicktabs_i18n_string_info() {
 }
 
 function quicktabs_translate($name, $string, $langcode = NULL, $textgroup = 'quicktabs') {
-  return function_exists('i18n_string') ? i18n_string($textgroup . ':' . $name, $string, array('langcode' => $langcode)) : $string; 
+  return function_exists('i18n_string') ? i18n_string($textgroup . ':' . $name, $string, array('langcode' => $langcode)) : $string;
 }
 
 /**
@@ -605,7 +608,7 @@ function theme_qt_quicktabs($variables) {
   $element = $variables['element'];
   $output = '<div '. drupal_attributes($element['#options']['attributes']) .'>';
   $output .= drupal_render($element['tabs']);
-  
+
   $output .= drupal_render($element['container']);
 
   $output .= '</div>';
