Skip to main content

Facebook friends, followers and followings: what each list actually means

· 3 min read
Product documentation and integration guides

Facebook exposes three distinct connection lists, and product teams routinely conflate them. They answer different questions, they are built differently, and mixing them up poisons every metric built on top. Here is the disambiguation, with the endpoint for each.

The three lists​

ListQuestion it answersVisibility
Friendswho accepted a mutual connectionusually private
Followerswho subscribes to this profile's public postspublic for pages/public profiles
Followingswhom this profile subscribes topublic for pages/public profiles

Friends are bidirectional and require acceptance — a strong-tie signal. Following is one-directional and free — a weak-tie interest signal. A brand cannot have "friends" at all; it has followers, and it follows other accounts.

The endpoints​

All three live under the same contract — pages of 15, cursor from page_info.end_cursor, passed back as after:

  • Friends — GET /fb/api/v1/friends
  • Followers — GET /fb/api/v1/followers
  • Followings — GET /fb/api/v1/followings (supports name filtering via query)
from getsocialapi_facebook import Client

fb = Client(api_key="gsa_live_...").facebook

def export(fn, uid):
rows, cursor = [], None
while True:
page = fn(uid, after=cursor)
conn = page["data"]["profile"]["followers"] # or friends/followings
rows += [e["node"] for e in conn["edges"]]
if not conn["page_info"].get("has_next_page"):
return rows
cursor = conn["page_info"]["end_cursor"]

followers = export(fb.followers, "100053723115450")

The connection key shifts slightly between endpoints (profile.followers vs group on group-scoped lists) — the response always mirrors the documented shape for that route.

Signals worth computing​

  • Follower / following ratio — the classic influence heuristic.
  • Audience overlap — followers ∩ following: the account's actual community core.
  • Empty friends on a personal profile — either privacy settings or a repurposed account; cross-check with the profile overview.
  • Followings without followers — a curation-heavy account (news, aggregation) rather than a social one.

Privacy boundaries, stated honestly​

Friends lists are frequently hidden by privacy settings even when the profile itself is public. The API returns an empty connection in that case — an empty list is data ("hidden"), not a bug. Design pipelines to distinguish empty-because-hidden from empty-because-none by checking the profile's privacy flags first.

Takeaway​

Three lists, three endpoints, one cursor protocol. Decide which question you are actually asking before choosing the route — then the walk is always the same 10 lines. Try all three on getsocialapi.com — the first 100 calls are free.

Build with GetSocialAPI​

Explore Facebook API for capabilities, pricing and integration examples. Create an account to start with 100 free calls, or follow the quickstart.