diff --git a/faker.module b/faker.module
index 5a88ffb..05f4f89 100644
--- a/faker.module
+++ b/faker.module
@@ -40,10 +40,17 @@ function faker_hook_info() {
  * to allow modules to add providers to the Faker instance.
  */
 function faker_create() {
+  $loaded = &drupal_static(__FUNCTION__, FALSE);
+  $faker = &drupal_static(__FUNCTION__.'_faker');
+  if ($loaded) {
+    return $faker;
+  }
+
   $lib = libraries_load('faker');
 
   $faker = Faker\Factory::create();
   drupal_alter('faker', $faker);
+  $loaded = TRUE;
 
   return $faker;
 }
