A real integrated library system does cataloguing, circulation, holds, fines and reporting properly. If you run a public or academic library you need one, and nothing in this guide replaces it.
This is for the far more common situation: a classroom library of two hundred titles, a church library, a community shelf, a school department collection. The budget is nil, the librarian is a volunteer or a teacher, and the current system is a notebook or nothing at all.
ISBN barcodes do most of the work
The barcode on the back of a book is an EAN-13 encoding its ISBN. That means your catalogue key already exists, is already printed, and is already durable. You do not need to label anything.
- Scan the existing barcode for anything published with one.
- Two copies of the same title share an ISBN, so if you must tell copies apart, add your own accession label for those.
- Older books, donated stock and homemade materials may have no barcode — print a simple ID for those.
- Do not encode the title in your own labels. Titles are long, and the ISBN already resolves to one.
1D barcodes like EAN-13 are more sensitive to focus and lighting than QR codes. A good scanner confirms a 1D read across consecutive frames before accepting it, because a single blurry frame can decode to a plausible but wrong number.
The free route
A Google Form with two fields — book and borrower — linked to a Sheet, is free and works. Open it on a phone or a shared tablet and use the keyboard's scanner to fill each field.
- Free, no cap, no vendor.
- Two taps and two scans per loan, which is slow but tolerable at low volume.
- No offline handling: a lost submission is a book you think is on the shelf.
- Nothing prevents a mistyped or duplicated entry.
Two links instead of a dropdown
We build a scanner-link tool, so read this as interested. The relevant difference for a lending desk is direction: rather than one form with a check-out or check-in dropdown that a volunteer will eventually get wrong, use two separate links pointing at the same Sheet. Whoever is at the desk opens the right one and just scans. There is nothing to select and therefore nothing to select wrongly.
The other difference is what happens on a shared device. Some scanner apps tie the session to a signed-in Google account, and on a shared tablet that account gets signed out or swapped, which breaks the desk until someone re-authenticates it. A tokenised link has no per-device login to lose — the URL is the credential, so a shared tablet, a volunteer's phone and the desk iPad all behave identically.
| Capability | Google Forms / Apps Script (DIY) | QR to Sheets |
|---|---|---|
| Cost | Free (Google Form) | Free to 300 scans, then $7 per device per month |
| Per loan | Two taps, two scans | Two scans |
| Wrong-direction errors | Dropdown can be missed | Separate link per direction |
| Shared tablet | Fine | Fine — no per-device login |
| Offline | Submission lost | Saved on device, syncs later |
| Catalogue lookup | Formula in your Sheet | Formula in your Sheet |
| Holds, fines, reporting | No | No — use an ILS |
What a spreadsheet will not give you
- Holds and reservation queues.
- Automated fine calculation and receipts.
- A public catalogue that patrons can search.
- Interlibrary loan, or any standards-based record exchange.
- Enforcement — it records that a book left, it does not prevent it.
If you need those, look at an open-source ILS rather than stretching a spreadsheet. The honest test is whether you need circulation *control* or circulation *records*. Records are a spreadsheet problem; control is not.
The append-only model, again
Two sheets. A catalogue with one row per ISBN, and a movement log with one row per scan. Availability, current borrower and overdue status are all derived from the latest movement per ISBN, never stored as an editable field.
This is what lets you answer the questions that come up a year later: which titles never circulate and could be weeded, which are always out and need a second copy, which class borrows most, and who has had a book since March.
Privacy
Borrowing records are unusually sensitive — what someone reads is not a neutral fact, and library ethics have long treated it as confidential. Encode borrower IDs rather than names, restrict who can open the Sheet, delete the borrower link once a book is returned if you have no reason to keep it, and set a retention period deliberately rather than accumulating years by default. In a school this may also fall under FERPA or your local equivalent.
Step by step
- 1
Use the barcode already on the book
Most books carry an ISBN barcode on the back cover. Scan that rather than printing labels — it is faster to set up and the code is already durable.
- 2
Build a catalogue sheet once
One row per book: ISBN, title, author, location. You can fill titles by hand, but scanning every book once at the start is quicker than it sounds and gives you a real catalogue.
- 3
Give borrowers a code
Student cards, printed bookmarks, or a code per class. Scanning both book and borrower is what makes the log answer questions rather than just recording that a book left.
- 4
Keep the loan log append-only
One row per scan with a direction — out or in. Never overwrite a status column. Current availability is derived from the most recent movement for each ISBN.
- 5
Run the overdue list weekly
A formula comparing checkout date to your loan period gives the list. Weekly beats end-of-term, when the books have already gone home for the summer.
Frequently asked questions
Can I use the barcode already printed on a book?+
Yes. The back-cover barcode is an EAN-13 encoding the ISBN, so your catalogue key already exists and is already durable. You only need to print labels for unbarcoded, donated or homemade items, or where you must distinguish two copies of the same title.
Does this replace a library management system?+
No. There are no holds, no fines, no public catalogue and no interlibrary loan. It gives you a reliable lending log. If you need circulation control rather than circulation records, use an ILS — several are open source and free.
How do I handle two copies of the same book?+
They share an ISBN, so if you need to tell them apart, add your own accession label to those specific copies and scan that instead. For most small collections, knowing that one of two copies is out is enough.
Why use two scanner links instead of one form with a dropdown?+
Because a dropdown is a thing a volunteer can miss, and a check-in recorded as a check-out corrupts the shelf status. Two links — one per direction — remove the choice, so there is nothing to get wrong at the desk.
Will it work on a shared tablet at the desk?+
Yes. A tokenised link carries its own authorisation, so there is no per-device sign-in to be lost when a shared device is handed around or signed out of a Google account. That is a known failure mode with app-based scanners on shared hardware.
How long should we keep borrowing records?+
As short as your purpose allows. Library practice treats reading history as confidential, so unless you need the borrower link for overdue chasing, consider clearing it on return and keeping only anonymous circulation counts for weeding decisions.