← Back to Rankings

How to Optimize Your Profile to Occupy a Name

Learn how NymRank determines name occupation and how to maximize your chances of claiming your desired "slug" or nickname.

Understanding Name Occupation

NymRank uses a reputation-based system to determine who "occupies" a name. To be considered an occupant, you need:

Example: If both "billionaire jack" and "temu jack" claim the name "jack", the user with higher reputation (more verified followers, better Web-of-Trust score) will rank higher and effectively occupy the name in search results.

Before claiming a name: Always search for it first. If someone with significantly higher reputation already occupies it, consider choosing a more unique variation instead of competing for the same name.

Name Affinity Scoring

Your affinity score determines how strongly you're associated with a name. Higher affinity = better occupation claim.

Field Points Description
name (exact match) +2 The primary name field in your kind 0 profile
name (starts with + space) +1 If your name starts with the slug followed by a space (e.g., "jack" matches "jack smith", but NOT "jackson" or "ja")
nip05 (exact match) +1 Your verified NIP-05 identifier
lud16 (exact match) +1 Your Lightning address

Minimum to occupy: You need at least 2 points total. For example:

Name vs Display Name:

How NIP-24 Defines Display Names

According to NIP-24, display_name is a richer, more expressive name field separate from name. The name field should be used for slugs/usernames, while display_name is for display purposes (with spaces, emojis, etc.).

Note for Amethyst users:

Amethyst's Nostr client profile editor for Android uses the name field but positions it like a display_name which can encourage users to incorrectly add spaces, emojis, and special characters. This is sub-optimal for name affinity:

⚠️ Important: NymRank only reads the name field (not display_name). If you use spaces or emojis in your name field, you'll only get partial match points (+1) instead of full points (+2). For optimal slug occupation, use a simple, single-word name without spaces or emojis.

How NymRank Handles This

To mitigate this UX ambiguity, NymRank gives partial credit for names that start with your slug followed by a space:

Example Profile JSON:
{
  "name": "jack",                    ← Use this for slug occupation (+2 points)
  "display_name": "Jack 🚀 Smith",  ← Use this for display (NIP-24 standard)
  "nip05": "jack@example.com",
  "lud16": "jack@example.com"
}
What Amethyst Users Often Do (Suboptimal):
{
  "name": "Jack Smith 🚀",          ← Only gets +1 point (partial match)
  "nip05": "jack@example.com",     ← +1 point
  "lud16": "jack@example.com"      ← +1 point
  // Total: 3 points (works, but not optimal)
}

Better approach: Set name to "jack" and use display_name for "Jack Smith 🚀"

NIP-05 and LUD-16 Prefixes

NIP-05 Identifiers

NIP-05 is a verification system that links your Nostr pubkey to an email-like identifier. The format is: username@domain.com

For name occupation, NymRank checks if the username part (before the @) matches the slug:

LUD-16 Lightning Addresses

LUD-16 is your Lightning payment address. Similar to NIP-05, NymRank checks the username prefix:

Pro Tip: Use the same username in both nip05 and lud16 to maximize your affinity score. Combined with a partial name match, you can easily reach the 2-point threshold.

How Reputation Helps You Win

Even if multiple users claim the same name, reputation determines who ranks highest:

Web of Trust (WoT)

NymRank uses influence scores calculated through the Web of Trust. Our base reputation inputs come from the GrapeRank project, which computes trust scores from follow/mute/report relationships and publishes them as NIP-85 Trusted Assertions. NymRank ingests these assertions and layers on name affinity and logarithmic weighting for search and occupation decisions.

Why "Billionaire Jack" Beats "Temu Jack"

Even if both users have the same name affinity:

The user with higher reputation effectively "occupies" the name because they appear first in search results.

Key Takeaway: Building your reputation through verified followers and trusted connections is just as important as setting your profile fields correctly.

Why This Matters: Use Cases

Name occupation enables powerful features for Nostr applications:

User Tagging & Mentions

Apps can resolve slugs to pubkeys for mentions and tags. Instead of typing long hex pubkeys, users can simply type @jack and a NymRank enabled Nostr client will resolve it to the correct npub.

Human-Readable URLs

NymRank enabled application and services can provide clean URLs that map to user profiles:

Name-Based Discovery

Users can search for people by memorable names instead of cryptographic keys, making Nostr more accessible and user-friendly.

For Developers: NymRank provides a reputation-weighted namespace that prevents name squatting while enabling human-readable identifiers across the Nostr ecosystem. Contact thecto for API access.

Choosing Your Name Wisely

Before claiming a name, check if it's already occupied by someone with higher reputation:

  1. Search for your desired name on NymRank
  2. Check the reputation scores of existing occupants
  3. If occupied by high-reputation users, consider a more unique variation:
    • Add your domain or specialty: "jackdev", "jackmusic", "jacknyc"
    • Use a compound name: "jacksmith", "jackjones"
    • Include numbers or underscores if appropriate: "jack_2024", "jack2"
  4. If the name is available or occupied by lower-reputation users, you can claim it by building your reputation
⚠️ Remember: Reputation matters. Even if you claim a name first, users with significantly higher reputation can overtake you in rankings. Choose a name where you can realistically compete or establish dominance.

Optimization Checklist

  1. Set your name field to a simple slug (no spaces, no emojis) for maximum points
  2. Only use display_name (NIP-24) for your rich display name with spaces/emojis
  3. Get a NIP-05 identifier with your username (e.g., "jack@yourdomain.com")
  4. Set a Lightning address (LUD-16) to match your NIP-05 username for bonus points
  5. Build verified followers to increase your Web of Trust reputation score
  6. Ensure your reputation meets the minimum threshold - Search for your desired name to see if you meet the reputation requirements (note: updates are periodically batched and not real-time)
  7. Check if your desired name is occupied - if someone more popular already has it, consider a more unique variation

Technical Details

NymRank reads your kind 0 Nostr profile event. To update your profile:

Profile refresh frequency: Future enhancements may consider activity staleness in reputation calculations.

Ready to claim your name?

Search for Your Name