Looks like the Great Firewall or something like it is preventing you from completely loading www.skritter.com because it is hosted on Google App Engine, which is periodically blocked. Try instead our mirror:


This might also be caused by an internet filter, such as SafeEyes. If you have such a filter installed, try adding appspot.com to the list of allowed domains.

User Entity

Users encompass all settings and properties of the account.

Public Properties

  • id
  • name
    the name the User is associated with. Often identical to id.
  • created
    (timestamp, immutable)
  • aboutMe
    (long string)
  • country
    (country code string)
  • avatar
    base64 encoded image data
  • private
    whether or not the account is set to be private, limiting access to information about it to the public
  • anonymous
    if this user hasn't officially signed up yet (such as when starting on the iOS app) (immutable)

Settings Properties

These are only available for the user you have authorized. All of these are mutable.

  • addFrequency
    integer which controls how frequently words are added (90: fast, 70: normal, 60: slow, 0: manual add only)
  • addSimplified
    when adding from lists, add the simplified versions of characters and words (boolean, Chinese only)
  • addTraditional
    when adding from lists, add the traditional versions of characters and words (boolean, Chinese only)
  • allowEmailsFromSkritter
    subscription flag for newsletters and announcements (boolean)
  • animationSpeed
    how fast strokes are animated (float from 0.0 to 1.0, from slow to fast)
  • autoAddComponentCharacters
    when adding multi-character words, whether or not to also add the component characters for active study (boolean)
  • chineseStudyParts
    (list of strings)
  • colorTones
    (boolean, Chinese only)
  • eccentric
    flag for showing easter eggs or oddities or other fun but possibly distracting stuff (boolean)
  • email
  • hideReading
    flag for, when possible, hiding the reading in the prompt (boolean)
  • japaneseStudyParts
    (list of strings)
  • orderWeight
    how strictly to ignore strokes made which are out of order (float from 0.0 to 1.0, from completely ignoring stroke order to strictly enforcing it)
  • sourceLang
    language the definitions are in
  • retentionIndex
    target review success rate, integer, one of the values in the table below.
    Different from but related to retention rate, which is how likely you are to succeed for any given review if you always review on time.
    Retention Index Value Retention Rate Notes
    8090%Most efficient, but demotivating with 20% failure rate.
    9095%Less efficient in the long run, but less demotivating. Default.
    9597%Least efficient choice, generally not recommended.
  • reviewSimplified
    review simplified Vocabs when studying (boolean, Chinese only)
  • reviewTraditional
    review traditional Vocabs when studying (boolean, Chinese only)
  • showHeisig
  • squigs
    if true, do not replace user's stroke drawing (squig) with the stroke image until the character is complete (boolean)
  • studyAllListWritings
    when adding a word from a list, add the writing even if the list specifies it shouldn't be studied for that word (boolean, Japanese only)
  • studyKana
    when adding a word from a list, add the writing even if it only consists of kana, and study these kana-only writings (boolean, Japanese only)
  • studyRareWritings
    add writing part for words that are not typically written in Kanji (boolean, Japanese only)
  • targetLang
    language being studied, on the website anyway
  • timezone
  • volume
  • goals
    An object specifying daily goals for this user. Has two properties: 'zh' and 'ja' for Chinese and Japanese goals, respectively. Each property is a goal object with either "items" or "time" properties, either of which must be integers. The "time" goal is in minutes. The goal object cannot have both.