The purpose of a diary study is to examine a user’s experience of a specific app over a longer period of time. Diary studies are a great way to see app usage in the user’s natural context, so that UX, developers and designers can study and learn from the user’s daily interactions.

With Lookback, mobile diary studies are now a practical thing you can do, providing you with valuable material for your practice.

In this article, I’ll show you how to configure Lookback for a diary study. You can do studies with both of these products:

  • Lookback iOS SDK
  • Lookback Awesome Mode (Update: Deprecated!)

Lookback iOS SDK

This tool is the most practical way of doing a mobile diary study, since it is built to capture only interactions with one specific app, and since you can control it programmatically. The settings are the same as for Lookback For Devices, but you don’t have to tell your testers to manually stop the recording, since you can do that in code.

After installing the SDK, a developer can make all the settings outlines above automatically, but also make the experience extra nice with a bit of code.

Starting with diary study settings

In this example, you have a button in your Settings called “Start diary study”. It starts recording with diary study settings, and goes on for one week. These code snippets are written in Swift, but the exact same APIs can be used from Objective-C.

@IBAction func startDiaryTest(sender: AnyObject!)
    let options = LookbackRecordingOptions()
    // This line will both disable Preview and disable 'auto-stop'.
    options.afterRecording = .TimeoutUploadAndStartNewRecording

    let duration = NSDateComponents() = 7 // one week; change to whatever duration you want to test for.
    let endDate = NSCalendar.currentCalendar().dateByAddingComponents(duration, toDate: NSDate(), options: NSCalendarOptions(rawValue:0))
    NSUserDefaults.standardUserDefaults().setObject(endDate, forKey: "diaryEndDate")

Stopping recording automatically

Instead of asking the tester to stop recording when a week has gone by, we can stop the recording programmatically ourselves.

func scheduleDiaryStudyEnd()
    let endDate = NSUserDefaults.standardUserDefaults().objectForKey("diaryEndDate") as! NSDate?
    if endDate == nil {

    let timer = NSTimer(fireDate: endDate!, interval: 0, target: self, selector: "endDiaryStudy", userInfo: nil, repeats: false)
    NSRunLoop.currentRunLoop().addTimer(timer, forMode: NSRunLoopCommonModes)

Since the app will start and stop a lot during that week, we need to schedule this timer every time the app starts. That would look something like this:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    (your app startup code)
    return true

Thanking the user for their participation

After your diary study recording has ended, you can display a dialog thanking them for their participation.

“Thank you for participating in this diary study. We’ve stopped recording your daily usage of (your app name).”

func endDiaryStudy() {
    let alert = UIAlertView(title: "Diary study ended", message: "Thank you for participating in ths diary study. We've stopped recording your daily usage of (your app name).", delegate: nil, cancelButtonTitle: "OK")

Lookback for your iOS device

Update: This method is no longer supported.

Also known as the Awesome Mode, this version of Lookback requires you to jailbreak your device, but enables you to record everything on your tester’s phone for the period of the test. Using Awesome mode for diary studies will work, but it will be very time consuming since you will record lot of other usage beyond the app or apps you are testing.

Configuring for diary studies


  1. Open Lookback and go to Settings.
  2. Turn off “Preview Before Uploading”. Preview lets the user decide what to upload or not, but that would be very disruptive in a diary study, so we turn it off.
  3. Turn off “Auto-Stop After Inactivity”. The point of a diary study is to always record, so we tell Lookback to never stop recording unless we tell it to.
  4. Configure “Auto-split after…” A single video file that is a week long would be incredibly unwieldy to work with. Thus, Lookback will split a diary study into several shorter clips, each one recording a single interaction. A ‘single interaction’ could mean different things in different studies, and so this setting lets you configure that. For how long should the phone be locked before it is considered a separate interaction?

User privacy

Privacy is very important to us. Lookback will not let you start a recording without first asking the user to accept a privacy policy. If you want to see what those dialogs look like in your flow, you can navigate to…

Lookback > ≣ > Settings > Developer > Reset Dialogs

An evolving tool

We would love to know how you do diary studies with Lookback. You can contact us at with any questions, feedback or ideas.