The Book Cipher (What it Is and How to Teach Your Kids)

I’m constantly on the quest to find new things for my two little boys to do. Recently that has taken me on an epic deep dive into all things involving secret codes, ciphers, treasure hunts, escape rooms, and spies. 

This week’s quest has taken me to the book cipher, and the more I learned about what it is, the more my brain exploded with fun, engaging activities I can do with my kids. 

What is a Book Cipher?

A book cipher (book code, Arnold cipher) is a method of disguising a message using a common book. Each word of the original message is replaced by three numbers. The first number represents the page, the second number represents the line, and the third number represents the word on that line. 

While it’s common to find them in fiction, especially in spy thrillers, book codes have an interesting past in American history. 

If you want to learn a similar code to the Book Cipher, check out The Ottendorf Cipher (What it Is and How to Teach Your Kids).

The Book Cipher in American History

One of the most notable historical uses of a book cipher was by Benedict Arnold in his failed attempt to surrender West Point to the British during the American revolution. Arnold’s messages used the Commentaries on the Laws of England by William Blackstone or Nathan Bailey’s Dictionary as the cipher keys. 

Image of Benedict Arnold
Benedict Arnold

Arnold would then hide his messages in what appeared as routine business communications. Sometimes, and this is my favorite, he would hide his messages using invisible ink in letters written by his wife. 

The Beale Papers (or Beale Ciphers) are a variant of the book cipher and uses a variant of the US Declaration of Independence as a key. According to legend, Thomas J. Beale encoded information about the location of a hidden treasure of gold, silver, and jewels. 

Beale left behind a set of three encoded messages. The first described the location of the treasure and was never decoded. The second message was decoded, and it described the contents of the treasure. The third message listed the treasure’s owner, but it too was never deciphered. 

No one has ever completely solved the Beale ciphers and it remains a mystery today. It is stories like this, however, that are the premise of some of my favorite movies, the things I dreamed of discovering as a kid, and the inspiration for me to create imaginative adventures for my two boys. 

If you want to learn about another cipher used in history, check out The Pigpen Cipher (What it Is and How to Teach Your Kids).

How to Encode and Decode Messages Using a Book Cipher

The message sender and receiver use the same book as the key to encode and decode messages. It is often a commonly found book in order to avoid suspicion from supersleuths like Sherlock Holmes (for you literary Sherlock fans, see Valley of Fear. For you Benedict Cumberbatch fans, watch season 1, episode 2, The Blind Banker for examples). 

Some common books include dictionaries or bibles, but it is important that both the message sender and receiver use the same edition of the same book. Personally, I’d probably use Harry Potter, because it’s safe to say it exists in almost every household in the US. 

To encode a message using a book cipher, replace each word of the original message (plaintext) with a set of three numbers of the predetermined code book (ciphertext). 

For our example I will use Robert Louis Stevenson’s Treasure Island as our code book to send the following message:

“I’m so good at sleeping, I can do it with my eyes closed.”

I then find the corresponding words in Treasure Island and write out three numbers that locate that word. First the page number, then the line number, and finally the word number on that line. 

Defining the three numbers of a book code/cipher

The first word “I’m” is on page 3, line 21, the 6th word in. “I’m” would be replaced with “3.21.6”. 

The whole message would look like this:

3.21.6     3.8.4     5.9.2     5.2.9     29.22.14     3.3.1     3.24.9     6.23.7     6.4.9     6.3.1     6.2.13     7.14.2     10.3.9

A couple tips when making your code: 

  • Try to use common words when possible. Otherwise it’s going to take a really long time to find your word.
  • You can skip looking up simple articles like “a” “an” and “the” and just write them out.
  • To simplify, you can add suffixes to the ciphertext instead of looking for the complete word. For example, it might be easier to find the word “sleep” instead of “sleeping.” So I would write the code 13.5.13 for “sleep” and turn it into “13.5.13-ing.”
  • Use the first letter for a proper noun. For example, if I was writing a letter to my son Ben, I may not find “Ben” at all in the code book. Instead I would use the letter “B” as the person receiving the message should know to whom I’m referring. 
  • Seeing as we’re in the age of technology, you can also use a pdf of a book or document. Encoding is much simpler using a simple search tool (Ctrl/Command+F). Be sure to use a pdf of a document and not something that will optimize the document for your screen size. Otherwise, it will change the placement of words and lines on each page. 

To decode the message, simply work backwards. Take the numbers of your ciphertext and replace them with the corresponding words.

If you want to try another code that’s simpler for younger kids, check out The Scytale Cipher (What It Is and How to Teach Your Kids).

How to Use a Dictionary for a Book Cipher

A variation that can be simpler to encode and decode is to use a dictionary. This way you don’t run into the issue of finding less-common words. 

But you will need to change what some of the numbers mean. The first number still refers to the page. The second number now refers to the column. The third number now refers to the entry in the dictionary. 

Defining the three numbers of a book code/cipher using a dictionary

So the word “complex” would be on page 254, column 2, entry 2.

If you want another great easy secret code for your kids, check out The Caesar Cipher (What it Is and How to Teach Your Kids).

Book Cipher Activity Ideas

Teaching kids how to decode a book cipher is super easy and doesn’t take more than a minute. Simply hand them a coded message and code book and tell them that when they decode the message, it will give them directions to the iPad so they can have their technology time for the day. 

Learn more: 6 Secret Codes and Ciphers to Teach Young Kids

One great activity to do with your kids using a book code is to create a library treasure hunt. Simply place the first code in a book you casually suggest your kid to look at which happens to have a coded message with the title of another book . Your child then needs to look up that book to find the next clue. This new book is the new code key and it leads to the next book and so on. 

This will take some planning ahead of time, but you can skip the research and check out how I did my Book Cipher Treasure Hunt Activity to Do with Your Kids. This is also a sneaky way to teach your kids how to search for books using the library catalog. 

You might also like these Treasure Hunt activities:

Gregory Grabowski

Greg Grabowski is the principal creator of, a website for dads by dads. Inspired by his two boys Ben and Sam and his wife Dianna, Greg loves to make things, learn things, and loves doing fun stuff with his family.

Related Posts