A MacBook alarm only works if it's impossible to ignore.
I built a laptop alarm for the Mac, and the surprising part wasn't making it go off. It was making it go off correctly — at the right moments, impossible to silence, and never at the poor person just walking past your table.
If you're searching for a MacBook alarm, you probably have my problem: you work in cafés or libraries, you occasionally need to walk away for four minutes, and you want the laptop to defend itself. Here's what I learned building one — use it as a checklist for whatever you end up installing, including mine.
What has to set it off
A thief doesn't politely unplug your charger and wait. They interact with the laptop in whatever way is fastest, so the alarm has to cover every way:
- Any touch — a key, the trackpad, the mouse. This is the most common first contact ("just having a look").
- The lid — closing it is the natural first move of someone stealing a laptop. Opening counts too. Newer MacBooks even have a lid-angle sensor, so a tilt can be caught.
- The charger — pulled out (or plugged in). The classic grab starts with yanking the cable. I wrote more about the charger-pull problem separately.
- Movement — the hard one. There's no accelerometer API on modern Macs, so the honest options are "give up" or "use the camera". More below.
- Sleep and wake — because closing the lid on battery will put the Mac to sleep, and the alarm has to wake up screaming, not wake up confused.
Miss one of these and you've built an alarm with a known bypass. Thieves are not researchers, but they are excellent empiricists.
Movement detection without an accelerometer
The camera can stand in for the missing motion sensor, but naively ("pixels changed!") it becomes a false-alarm machine — cafés are full of moving people. The trick is geometry: when the laptop itself moves, the entire picture shifts together in one direction. When a person walks behind you, only the blocks of the image they cover change and the rest stays put. Watch for "everything moved the same way" (or "everything vanished" — camera covered, laptop carried off) and you get an alarm that fires when the machine is lifted and shrugs at the lunch rush.
Two things I'd insist on with any camera-based alarm: nothing gets recorded or sent anywhere, and the green camera LED stays on while armed — visible deterrence is the point, not surveillance.
What the alarm itself must do
An alarm a thief can silence in one gesture is a doorbell.
The failure modes are all obvious in hindsight:
- Volume. Step one for anyone holding a screaming laptop is the volume-down key. The alarm has to force system volume to 100 % — and re-force it every second, and unmute it.
- Quitting. ⌘Q, ⌘-Tab, closing the window — all blocked while armed. Otherwise the alarm is one keyboard shortcut long.
- Attention. A beep is ignorable. A pulsing red full-screen, a siren, and a human voice saying "HELP! I'm being kidnapped!" is not. The voice matters more than you'd think: a siren could be anyone's phone, but a laptop talking about being stolen makes everyone look at the person holding it.
- Disarming. You, the owner, need to shut it up fast and gracefully — a short PIN typed blind, no field, no Enter — and the volume should go back to exactly where it was, like nothing happened.
What an alarm is not
An alarm is a deterrent, not a lock. Someone who force-restarts the Mac and sprints still has your laptop (they don't have your data if FileVault is on, which it is by default). The alarm's job is to make sure that in a room full of witnesses, nobody wants to be that person. For the four-minute absences that make up real café life, that's the right tool — I compared it with the alternatives in the full protection guide.
The checklist above, as an app
Don't Touch is my answer: arm it, and the screen becomes a calm aurora screensaver. Touch, lid, charger, movement, sleep — anything sets off a red screen, a siren at forced full volume, and 25 spoken one-liners, until your PIN. Native, notarized, ~0.5 MB, never touches the internet. $5 once.
Poke the demo →