diff --git a/facetapi.api.php b/facetapi.api.php
index d69530f..429d470 100644
--- a/facetapi.api.php
+++ b/facetapi.api.php
@@ -143,6 +143,8 @@ function hook_facetapi_realm_info_alter(array &$realm_info) {
  *     contains bundle information for. Defaults to an empty array.
  *   - query types: The query type plugins that that this facet supports. For
  *     example, numeric fields support "term" and "range_filter" queries.
+ *   - alter callbacks: (optional) Callbacks that alter the initialized render
+ *     array returned by the query type plugin. Defaults to an empty array.
  *   - dependency plugins: (optional) An array of dependency plugin IDs that are
  *     supported by this facet.
  *   - default widget: (optional) The widget plugin ID used if no plugin has
diff --git a/facetapi.module b/facetapi.module
index 661ab8f..d3e9c36 100644
--- a/facetapi.module
+++ b/facetapi.module
@@ -399,6 +399,8 @@ function facetapi_realm_load($realm_name) {
  *     bundle information for.
  *   - query types: The query type plugins that that this facet supports. For
  *     example, numeric fields support "term" and "range_filter" queries.
+ *   - alter callbacks: Callbacks that alter the initialized render array
+ *     returned by the query type plugin. Defaults to an empty array.
  *   - dependency plugins: An array of dependency plugin IDs that are supported
  *     by this facet.
  *   - default widget: The widget plugin ID used if no plugin has been selected
@@ -573,6 +575,7 @@ function facetapi_get_facet_info($searcher) {
           'field api name' => FALSE,
           'field api bundles' => array(),
           'query types' => array('term'),
+          'alter callbacks' => array(),
           'dependency plugins' => array(),
           'default widget' => FALSE,
           'allowed operators' => array(FACETAPI_OPERATOR_AND => TRUE, FACETAPI_OPERATOR_OR => TRUE),
diff --git a/plugins/facetapi/adapter.inc b/plugins/facetapi/adapter.inc
index 1d36e27..1ac4912 100644
--- a/plugins/facetapi/adapter.inc
+++ b/plugins/facetapi/adapter.inc
@@ -1196,6 +1196,13 @@ class FacetapiFacetProcessor {
     // Builds render arrays for each item.
     $adapter = $this->facet->getAdapter();
     $build = $adapter->getFacetQuery($this->facet->getFacet())->build();
+
+    // Invoke the alter callbacks for the facet.
+    foreach ($this->facet['alter callbacks'] as $callback) {
+      $callback($build, $adapter);
+    }
+
+    // Iterates over the render array and merges in defaults.
     foreach (element_children($build) as $value) {
       $item_defaults = array(
         '#markup' => $value,
