diff --git modules/profile/profile.info modules/profile/profile.info
index cc27ac1..0374563 100644
--- modules/profile/profile.info
+++ modules/profile/profile.info
@@ -10,3 +10,8 @@ files[] = profile.pages.inc
 files[] = profile.install
 files[] = profile.test
 configure = admin/config/people/profile
+; The Profile module is deprecated, and included in Drupal 7 for legacy
+; purposes only. By default, the module will be hidden from the UI unless you
+; are upgrading a site that uses the Profile module to extend user profiles.
+; See user_system_info_alter().
+hidden = TRUE
diff --git modules/user/user.module modules/user/user.module
index ff1869f..96c26e0 100644
--- modules/user/user.module
+++ modules/user/user.module
@@ -3746,13 +3746,13 @@ function user_file_download_access($field, $entity_type, $entity) {
  *
  * To prevent new Drupal 7 sites from installing Profile module, and
  * unwittingly ending up with two completely different and incompatible methods
- * of extending users, remove it from the available modules by setting it to
- * hidden if the profile_* tables are not already present.
+ * of extending users, only make the Profile module available if the profile_*
+ * tables are present.
  *
  * @todo: Remove in D8, pending upgrade path.
  */
 function user_system_info_alter(&$info, $file, $type) {
-  if ($type == 'module' && $file->name == 'profile' && !db_table_exists('profile_field')) {
-    $info['hidden'] = TRUE;
+  if ($type == 'module' && $file->name == 'profile' && db_table_exists('profile_field')) {
+    $info['hidden'] = FALSE;
   }
 }
