Mac screen time tracker launch at login: verify it
An enabled toggle does not prove a tracker counted the first work block. Verify registration, a real login launch, the restored total, and live counter movement.
Use four checks before trusting a Mac screen time tracker at login: its saved preference is on, macOS reports the login service enabled, the app appears after a real login, and its counter resumes and advances. A tracker that opens late can load the total it saved earlier that day. It cannot reconstruct active time from the period when it was not running.
teenyscreeny defaults Launch at Login to on. Its current source compares that preference with Apple's Service Management status and corrects the saved preference when registration fails. That keeps the setting honest, but the enabled status still means the service is eligible to run. The next login supplies the launch evidence.
Enable launch at login when the menu bar number changes a decision during the day. Keep it manual if you only inspect history occasionally and accept that the current day's total begins when you open the app.
Disclosure: I build TeenyScreeny. The verification standard below is intentionally stricter than checking its own toggle.
Pass four login checks
| Check | Evidence | Failure signal |
|---|---|---|
| 1. Preference | Launch at Login remains on after you leave and reopen settings. | The app reverted the toggle because registration did not match the request. |
| 2. Registration | Login Items & Extensions lists the app and Service Management reports enabled. | The service needs approval, was not found, or is not registered. |
| 3. Launch | The TeenyScreeny item appears after log out and log in. | Registration exists, but the app is not running in the new session. |
| 4. Counter | Today's saved total loads, then the total increases during a controlled activity window. | The app opened, but pause, lock, idle, permission, or license state prevents counting. |
Know what registration proves
Apple's SMAppService represents the app's login service. Its status can be enabled, not registered, not found, or require approval. Enabled means the service is eligible to run. It does not prove a specific launch happened, the app stayed open, or its timer began accumulating.
TeenyScreeny's settings read the current system status when they appear. Turning the option on calls Apple's registration method; turning it off unregisters the service. If either call fails, the visible setting is reset to the actual enabled state. The app repeats the preference-versus-status check during its own launch.
This is the Screeny acceptance case in the TeenyApps Mac login items checklist. Preference, registration, launch, and useful first state are separate facts.
Separate restored time from missed time
TeenyScreeny loads today's existing local record when its screen-time manager is configured. It saves the running accumulator every 60 seconds and on events such as quit and sleep. If you restart at 2:00 p.m. after the app saved four hours, a successful launch can restore that four-hour value and continue from there.
The restore is not backfill. If the login item fails and you manually open the app at 2:30 p.m., the 30-minute gap is absent because no TeenyScreeny process observed it. A restored total can look plausible while still missing time.
Record both numbers during a test: the total immediately after login and the total after a known interval. The first checks persistence. The difference between them checks current accumulation.
Make the counter test match the counting rule
TeenyScreeny's current default is Always count: the timer can advance while the screen is awake and unlocked even without recent input. If you turn Always count off, the saved idle threshold defaults to five minutes. Mouse events reset that idle clock; global keyboard events require Accessibility trust.
Before the login test, record whether the app is paused, whether Always count is on, and whether Accessibility is trusted. Then log in, note the displayed total, use the Mac for five minutes, and note the new total. With Always count on, the awake and unlocked window should advance. With an idle timeout enabled, use the input method your normal work depends on.
If a typing-only window stalls, use the keyboard activity checklist. The broader Mac screen-time setup guide explains when Apple's app and website report is the better measurement.
Run a two-login acceptance test
- Open TeenyScreeny settings, turn Launch at Login on, leave settings, then reopen them and confirm it stayed on.
- Open System Settings, General, Login Items & Extensions, and confirm TeenyScreeny appears for this user.
- Record the current total, pause state, Always count setting, idle threshold, and Accessibility state.
- Log out and log back in, or restart and complete login. Do not open TeenyScreeny manually.
- Confirm the menu bar item appears and today's prior total loads.
- Use the Mac for a measured five-minute window, then confirm the counter increased according to the saved counting rule.
- Repeat the login once. Record the first failed gate if the two results differ.
A useful pass record is specific: "enabled in System Settings, login completed at 9:02, menu bar total restored to 1:14:20, five-minute awake window added about five minutes." Exact totals can vary with pause, lock, and idle rules; the record should explain those conditions.
Do not use wake as the login test
Wake-from-sleep does not exercise the login item. It tests TeenyScreeny's existing process, its sleep observers, and its wake handling. The app marks the screen awake again, resets its timing baseline, and handles a date change if sleep crossed midnight.
Quitting and reopening also skips Service Management's login trigger. Use those checks for ordinary launch and wake behavior, but use an actual user login for the startup acceptance record.
Keep the app manual if you only review history and accept a partial current-day total. On a shared Mac, test under the account that will use it; login items and the local daily record belong to the current user environment.
Diagnose the first failed check
If Launch at Login switches itself off, stop at registration. TeenyScreeny resets that preference to the system's current state when Apple's register or unregister call fails. Accessibility, idle settings, and the counter are downstream and cannot repair an unregistered login service.
If the service is enabled but the app is absent, confirm that you tested the same user account and crossed a real login boundary. Then open the app manually. A successful manual launch narrows the problem to the login path; another failure points to ordinary app launch or runtime behavior.
If the app appears but today's total is lower than expected, separate persistence from the missing gap. TeenyScreeny saves every 60 seconds and on normal lifecycle events, so an abnormal termination can lose the most recent unsaved interval. Any longer period before the new process launched was never observed and cannot be recovered by the app.
If the restored total looks right but does not advance, inspect the counter state. A user pause, a locked or sleeping screen, or an unavailable license stops accumulation. When Always count is off, also check the idle threshold and the input permission. Accessibility matters to the global keyboard monitor; it does not determine whether Service Management launched the app.
Use Apple Screen Time as a different view
Apple Screen Time can show app and website activity, day and week views, App Limits, and Downtime. TeenyScreeny records one local active-time total and deliberately omits app names and websites. The two products answer different questions, so matching totals are not an acceptance requirement.
For this test, compare TeenyScreeny with its own saved value and a controlled new interval. Use Apple Screen Time when the decision depends on which app or website used the time, not as proof that TeenyScreeny's login service ran.
Common questions
Should a Mac screen time tracker launch at login?
Yes, if you use the live total during the day. Confirm the login service is enabled, then prove the app opens and the counter advances after a real login.
Does TeenyScreeny backfill time before it launches?
No. TeenyScreeny loads today's saved local total when it opens, but it cannot add active time from a gap when the app was not running.
Does waking the Mac test launch at login?
No. Wake tests the app's sleep and wake handling only if it was already running. Log out and back in, or restart and log in, to test the login item.
Sources checked
- TeenyScreeny facts were checked against the TeenyScreeny homepage and current local Swift source for the login preference, Service Management status sync, saved daily totals, 60-second persistence, counting rules, sleep/wake handling, and Accessibility behavior.
- Apple Support: Open items automatically when you log in on Mac.
- Apple Support: View Screen Time activity on Mac.
- Apple Developer Documentation: SMAppService.
- Apple Developer Documentation: SMAppService status values.
- Apple Developer Documentation: Registering a service.
$4.99 once. Count the day from the first session.
teenyscreeny is a native Mac menu bar counter with local history, soft daily goals, streaks, CSV export, and launch-at-login support.