diff --git a/res/menu-sw600dp/people_options.xml b/res/menu-sw600dp/people_options.xml
index 97fc0ac..b1659c7 100644
--- a/res/menu-sw600dp/people_options.xml
+++ b/res/menu-sw600dp/people_options.xml
@@ -20,12 +20,6 @@
         android:title="@string/menu_search"
         android:showAsAction="ifRoom" />
 
-    <item
-        android:id="@+id/menu_add_contact"
-        android:icon="@drawable/ic_add_person_dk"
-        android:title="@string/menu_new_contact_action_bar"
-        android:showAsAction="ifRoom" />
-
     <!-- Added orderInCategory to keep the following buttons at the end of the menu
          Buttons will be added in the order added/inflated. Ordered buttons will be added
          at the end according to the orderInCategory. This setup insures that the buttons below
diff --git a/res/menu/people_options.xml b/res/menu/people_options.xml
index 9638c2e..6b0696d 100644
--- a/res/menu/people_options.xml
+++ b/res/menu/people_options.xml
@@ -21,12 +21,6 @@
         android:showAsAction="ifRoom" />
 
     <item
-        android:id="@+id/menu_add_contact"
-        android:icon="@drawable/ic_add_person_dk"
-        android:title="@string/menu_new_contact_action_bar"
-        android:showAsAction="ifRoom" />
-
-    <item
         android:id="@+id/menu_contacts_filter"
         android:title="@string/menu_contacts_filter" />
 
diff --git a/src/com/android/contacts/activities/PeopleActivity.java b/src/com/android/contacts/activities/PeopleActivity.java
index 50f9879..f3cf32c 100644
--- a/src/com/android/contacts/activities/PeopleActivity.java
+++ b/src/com/android/contacts/activities/PeopleActivity.java
@@ -964,27 +964,22 @@
         }
 
         // Get references to individual menu items in the menu
-        final MenuItem addContactMenu = menu.findItem(R.id.menu_add_contact);
         final MenuItem contactsFilterMenu = menu.findItem(R.id.menu_contacts_filter);
-
         final MenuItem clearFrequentsMenu = menu.findItem(R.id.menu_clear_frequents);
         final MenuItem helpMenu = menu.findItem(R.id.menu_help);
 
         final boolean isSearchMode = mActionBarAdapter.isSearchMode();
         if (isSearchMode) {
-            addContactMenu.setVisible(false);
             contactsFilterMenu.setVisible(false);
             clearFrequentsMenu.setVisible(false);
             helpMenu.setVisible(false);
         } else {
             switch (mActionBarAdapter.getCurrentTab()) {
                 case TabState.FAVORITES:
-                    addContactMenu.setVisible(true);
                     contactsFilterMenu.setVisible(false);
                     clearFrequentsMenu.setVisible(hasFrequents());
                     break;
                 case TabState.ALL:
-                    addContactMenu.setVisible(true);
                     contactsFilterMenu.setVisible(true);
                     clearFrequentsMenu.setVisible(false);
                     break;
@@ -1060,11 +1055,6 @@
                 onSearchRequested();
                 return true;
             }
-            case R.id.menu_add_contact: {
-                final Intent intent = new Intent(Intent.ACTION_INSERT, Contacts.CONTENT_URI);
-                startActivity(intent);
-                return true;
-            }
             case R.id.menu_import_export: {
                 ImportExportDialogFragment.show(getFragmentManager(), areContactsAvailable(),
                         PeopleActivity.class);
