Check if a Goodreads username is taken

Digital Footprint checks Goodreads from an username as part of every lookup, alongside 885+ other platforms, breach history and public web mentions - one request, one shape of answer. A hit means an account exists for that input; account contents are never collected.

Accepts
username
Speed
Standard tier
Popularity
#259 by global traffic

What we check on Goodreads

Standard tier - checked on every full lookup

Goodreads is checked from a username. The response says whether that handle exists on Goodreads - registered: true or registered: false - with the moment that was established in checkedAt. An email address on its own cannot reach Goodreads; if you only have an email, its local part is tried as a handle and any hit is labelled as derived, never counted as a confirmed match.

Goodreads is checked on every full lookup (?wait=true or streaming), alongside every other platform. It is not in the sub-second instant subset, which is reserved for the highest-value platforms for each input type.

If Goodreads blocks the check, times out, or answers ambiguously, it is omitted from results[] entirely rather than returned as registered: false. Absence from the response means "unconfirmed", never "no account".

Who checks Goodreads accounts

Media and publishing accounts are checked because listening, reading and blogging histories are among the oldest footprints a real person leaves. An email that has streamed music or published posts for years behaves like a real customer; one with no media history at all is more often a fresh, single-purpose address.

More on this: Email fraud detection.

Inputs Goodreads accepts

  • Username: send the handle as query. Goodreads is checked for that exact handle - useful when a person reuses the same name across platforms.

One request

POST /v2/lookup?wait=true
curl -X POST "https://api.digifootprint.dev/v2/lookup?wait=true" \
  -H "Authorization: Bearer dfp_your_key" \
  -H "Content-Type: application/json" \
  -d '{"query": "someuser"}'

What a Goodreads result looks like

From footprint.results[]
{
  "platform": "goodreads",
  "registered": true,
  "checkedAt": "2026-10-15T09:53:17.805Z",
  "identity": "username"
}

The full response shape - breaches, web mentions, matches versus socialMatches, and what method means - is in running a lookup.

Related platforms

Every one of these is checked in the same request as Goodreads.

More media & publishing platforms: SlideShare, Substack, Blogger, CNET, Dailymotion, Bandcamp · all media & publishing

Goodreads lookup FAQ

Can I check a phone number on Goodreads?
Not directly. Goodreads can be reached from username. Phone numbers are checked on the messaging and social apps that sign people up by phone.
How fast is a Goodreads check?
Goodreads is checked on a full lookup, which streams results as they land - the first matches arrive in around 60 milliseconds and the whole set typically completes in a few seconds.
What happens if Goodreads blocks the check?
Goodreads is left out of the response. We never report a platform we could not confirm as "not registered" - a missing platform means unconfirmed, not absent.
Does the API return the Goodreads account details?
No. You get whether an account exists for the input you sent, and when that was established. No profile contents, photos, followers or private data are collected or returned.

Check Goodreads and 885+ other platforms in one request

Free to start, no card. Then pay as you go, or pick a plan when your volume grows.