Skip to content
The Product Guys
All patterns
Onboarding5 min read

Social Import

Offer to bring in the people a new user already knows, with consent and visible control.

The problem it solves

Products whose value depends on other people are worthless to the first user alone. Building a network by hand is slow enough that most people quit before it pays off.


In any product where value scales with connections, the first session has a chicken and egg problem. The feed is empty because nobody is followed. Nobody is followed because finding people one search at a time is tedious. Social import short circuits it by offering to match the user against a source they already have: contacts, an email address book, or an account on another service.

This pattern has been abused enough that users approach it with suspicion, and reasonably so. The version that works and the version that generates a decade of complaints differ on a few specific details.

The version people hate

  • Find friends, with an Allow button and no explanation.
  • All matched contacts pre selected.
  • Contacts uploaded and stored on the server permanently.
  • Invites sent to everyone, worded as though the user wrote them.

The version that earns consent

  • We will match your contacts against existing accounts. We do not store them and we do not message anyone without you choosing them.
  • Nothing pre selected. The user picks.
  • Matched in memory, discarded after, with the retention rule stated.
  • Invites clearly from the product, sent only to names the user ticked.

The pre selection detail is the one to fight about. Pre selecting all matched contacts raises the number of connections and shifts the decision from the user to the default. It also produces the follow up where someone realises they messaged a former employer. The connections you get that way tend not to be the ones that keep anyone around.

Alternatives before you reach for contacts

  • Interest based seeding: ask about two topics and populate from those, with no access to anyone's address book.
  • Invite links the user shares themselves, which puts the choice where it belongs.
  • Team domain matching in B2B, showing colleagues who already have an account on the same verified domain.
  • Import from a service the user explicitly connected for another reason, with the scope stated.

Worked example

Cardinal, a reading app

Cardinal ran contact matching on the second screen and saw high permission denial. They replaced it with three topic choices that populate a starter feed, and moved contact matching to a Find people you know entry in the profile tab, available whenever the user wants it. The first session no longer opens with a request. The feature still exists for anyone who goes looking.

If you do build it, state the retention rule in the interface, not in the privacy policy. A sentence saying the contacts are matched and discarded does more for consent than a link nobody opens.

When it fits

  • Products where the core experience is empty and useless without other people in it.
  • B2B tools that can match on a verified company domain rather than on a personal address book.
  • Cases where the user has already connected an account for another reason and the scope is clear.
  • Products that can honestly say matched contacts are discarded rather than stored.

When it backfires

  • When contacts are pre selected, producing invites the user did not intend and relationships they did not want surfaced.
  • When it appears before the user understands the product, spending a one shot permission on a stranger's request.
  • When contact data is retained beyond the match, which turns a convenience into a liability.
  • When an interest based alternative would fill the feed just as well without touching anyone's address book.

Products using it

  • Slack

    Workspaces surface colleagues on a shared verified email domain rather than reading a personal address book.

  • Spotify

    Signing up has offered to connect with friends already on the service, alongside taste based recommendations that need no contacts.

  • Strava

    Finding people can be done through contacts or by searching, with the contacts route presented as one option among several.

The psychology under it

The takeaway

Never pre select contacts, state the retention rule in the interface, and try interest based seeding before asking for anyone's address book.

Finished the teardown? Bank it and the day counts toward your run.