diff --git a/modules/contact/contact.module b/modules/contact/contact.module
index eaae9c6..35f84eb 100644
--- a/modules/contact/contact.module
+++ b/modules/contact/contact.module
@@ -133,14 +133,20 @@ function _contact_personal_tab_access($account) {
     return FALSE;
   }
 
-  // If the requested user has disabled their contact form, or this preference
-  // has not yet been saved, do not allow users to contact them.
-  if (empty($account->data['contact'])) {
+  // If requested user has been blocked, do not allow users to contact them.
+  if (empty($account->status)) {
     return FALSE;
   }
 
-  // If requested user has been blocked, do not allow users to contact them.
-  if (empty($account->status)) {
+  // If the requested user has not yet saved this preference, and the
+  // the default value is false, do not allow others to contact this user.
+  if (!isset($account->data['contact']) && !variable_get('contact_default_status', 1)) {
+    return FALSE;
+  }
+
+  // If the user has disabled their personal contact form,
+  // do not allow others to contact them.
+  if (isset($account->data['contact']) && !($account->data['contact'])) {
     return FALSE;
   }
 
