Search code examples
urldnsnaming-conventionsvanity-url

What are some good username / vanity url rules?


This isn't about "how to" as much "how best".

I understand most sites with vanity urls have basic rules:

  • >4 characters (covers a bunch of useful tokens like "blog" and "jobs", but also a long list of "4-letter words")
  • start with alpha
  • alphanumerics only (maybe ._- too, but user.name would be the same as username)
  • disallow reserved words to prevent abuse and avoid confusion (ex: contact, about, username, vanityurl, [what are some others?])

What other rules are important to consider for a site adding vanity urls?

What are common words that should be reserved to prevent confusion or abuse?


Solution

  • I'm going to begin posting what I've found so far.

    Set Character Limit >4 characters

    Must contain at least one alpha [a-z]

    Optional Special Characters: ._-

    • Special characters should not count toward distinct tokens (i.e. user.name = username)
    • Special characters should also not be used simultaneously (ex. user..name)
    • Special characters should not start or end a token (ex. -user-name-, .username-)
    • UPDATE: Facebook and Twitter disallow the dash as well. Consider excluding.
    • Gmail only allows dots.

    Avoid character confusion by preventing similar looking characters l,1, o0

    • For example, if colbert is registered, prevent co1bert or c01bert from also being registered

    Case-insensitive

    Reserved Word List

    about, aboutus, account, accounts, add, admin, administer, administrator, admins, ajax, anon, anonymous, apache, api, app, apps, archive, archives, article, articles, auth, authenticate, authentication, author, backup, better, blog, blogger, cache, careers, cart, changelog, checkout, client, clients, codereview, compare, config, configuration, connect, contact, contactus, contributor, cpanel, create, css, daemon, data, database, deal, deals, delete, director, direct_messages, docs, documentation, download, downloads, edit, editor, email, emailus, employment, enterprise, explore, facebook, faq, faqs, favorites, feed, feeds, fleet, fleets, follow, followers, following, font, fonts, forum, forums, friend, friends, friending, ftpuser, games, gist, group, groups, guest, help, home, host, hosting, hostmaster, http, httpd, idea, ideas, image, images, include, includes, index, indexes, info, invitation, invitations, invite, is, it, job, jobs, json, lib, library, list, lists, login, logout, logs, mail, map, maps, master, mine, mis, misc, miscellaneous, moderate, moderator, module, modules, mysql, news, nobody, node, nodes, oauth, oauth_clients, offers, office, openid, operate, operator, oracle, order, orders, organizations, owner, password, passwords, plans, poll, polls, popular, post, postgres, postmaster, president, privacy, profile, profiles, projects, public, put, pwnd, pwned, pwnage, question, questions, qwerty, rdf, recruit, recruiter, recruiters, recruitment, register, registrar, registration, remove, replies, root, rss, sales, save, save, script, scripts, search, security, server, service, sessions, settings, shell, shop, signup, signout, sitemap, spam, ssl, ssladmin, ssladministrator, sslwebmaster, stat, stats, statistics, status, stories, student, styleguide, subscribe, support, supporter, survey, surveys, sysadmin, template, templates, terms, test, tester, testing, tests, testuser, theme, themes, tour, tomcat, translations, trends, tutorial, tutorials, twitter, twittr, unfollow, unsubscribe, url, update, upload, uploads, user, users, video, videos, weather, webadmin, webmaster, widget, widgets, wiki, www, wwww, xfn, xmpp, yml, yaml