Pricing Log in Start for free

Steam + deariary: your gaming diary

You played Baldur’s Gate 3 for 140 hours. You know this because Steam says so: a number on your profile, right under the game’s icon. One hundred and forty hours of choices, conversations, combat, and exploration, compressed into a single counter.

What happened during hour 87? You have no idea. Neither does Steam.

We wrote about why gaming deserves a diary previously. This post is the technical companion: exactly what deariary pulls from Steam, how it handles the data, and what shows up in your diary the next morning.

How the connection works

Steam does not use OAuth like most integrations. It uses OpenID 2.0, an older authentication protocol where you sign in through Steam’s own login page and Steam confirms your identity to deariary.

The result is simpler than OAuth in one important way: deariary never receives or stores a per-user access token. It stores only your Steam ID (a 17-digit public identifier, the same one visible on your profile URL) and fetches your data using a server-managed API key. There is nothing to expire, nothing to refresh, and nothing stored on deariary’s side that could grant access to your Steam account.

What deariary collects from Steam

deariary reads your gaming activity through the Steam Web API. It collects three categories of data:

Games played

For each game where your playtime increased since the last collection:

  • Game name and app ID: which game you played
  • Minutes played since last collection: a computed delta, not the lifetime total
  • Days the delta covers: how many days since the previous snapshot (usually 1)
  • Lifetime playtime: the cumulative total, kept as a reference point for computing future deltas
  • Last played timestamp: when you most recently launched the game

Achievements unlocked

For each achievement earned during the collection period:

  • Achievement display name: the human-readable name (e.g. “Hero of the Forgotten Realms”), not the internal API identifier
  • Game name: which game the achievement belongs to
  • Unlock timestamp: when you earned it

Summary

  • Games played count: how many distinct games had increased playtime
  • Total minutes: the sum of all session deltas for the day
  • Achievements unlocked: how many achievements were earned

The snapshot system

Most Steam data tools show you a single number: total hours played. deariary needs something more granular. It needs to know how much you played yesterday.

Steam’s API does not provide daily breakdowns. It returns playtime_forever, a single cumulative counter for each game. To get daily deltas, deariary takes a snapshot of all your playtime values each day and compares it to the previous one.

If your Baldur’s Gate 3 lifetime total was 8,430 minutes yesterday and 8,520 minutes today, deariary knows you played 90 minutes. It reports that delta, not the 8,520 minute total.

This approach has one edge case: your very first day. With no previous snapshot to compare against, there is no way to compute a delta. deariary handles this by falling back to rtime_last_played (Steam’s last-played timestamp) and including any game you touched during the collection window. The first diary entry lists what you played, though without precise session durations. From the second day onward, deltas are available.

What deariary does NOT collect

  • No friends list. deariary does not see who you play with, who is online, or who is on your friends list.
  • No game-specific data. Save files, in-game inventories, match histories, and replays are not accessed.
  • No store or purchase information. Your wishlist, transaction history, and payment details are not read.
  • No chat messages. Steam chat conversations are not collected.
  • No community content. Workshop subscriptions, screenshots, reviews, guides, and forum posts are not accessed.
  • No write access. deariary reads activity data. It cannot launch games, modify your library, or change your profile.

You can disconnect Steam at any time from your deariary settings. Once disconnected, deariary loses access immediately.

From raw data to a readable evening

Here is what the transformation looks like. Say you played two games in an evening: a longer RPG session and a shorter run of a roguelike.

Steam’s API returns something like:

Baldur's Gate 3: playtime_forever 8520 min (delta: +90 min)
Balatro: playtime_forever 1140 min (delta: +25 min)
Achievement unlocked: "Gold Stake Clear" (Balatro, 22:47 UTC)

deariary hands this to the LLM alongside your other integrations’ data for that day. The result reads like:

After work you spent about an hour and a half on Baldur’s Gate 3, pushing through the goblin camp and reaching a conversation that branched in a direction you did not expect. Later you switched to Balatro for a couple of quick runs before bed, clearing the gold stake for the first time.

The raw numbers become a paragraph. The achievement becomes a moment, not a notification you dismissed three weeks ago.

What the LLM does with gaming data

The Steam fetcher provides a hint to the LLM: gaming data usually deserves a brief mention noting what was played, for how long, and any achievements. The LLM decides how much space to give it based on the rest of your day.

On a day packed with meetings, code reviews, and Slack conversations, the gaming section might be one sentence: “In the evening you played an hour of Civilization VI.” On a quiet Saturday where Steam was your main activity, the entry might dedicate a full paragraph to what you played and how the session went.

This is intentional. A diary should reflect how the day felt, and a two-hour session on a busy weekday carries different weight than a six-hour weekend marathon. The LLM picks up on that difference because it sees the full context of your day, not just the Steam data in isolation.

Steam alone vs. with other integrations

A Steam-only diary captures your sessions accurately, but it reads like a gaming log: what you played, for how long, and what you unlocked.

Add other integrations and the sessions gain context:

Steam only:

You played about two hours of Civilization VI in the evening, continuing a domination victory on emperor difficulty. Earlier you spent forty minutes on Slay the Spire.

Steam + Google Calendar + Discord:

Your morning had two meetings, including the sprint review that ran long. The afternoon was quiet, and you left work a bit early. In the evening you hopped into the Discord voice channel with two friends for a co-op Civilization VI session that lasted about two hours, debating whether to declare war on the neighbor or play it safe. After they signed off, you unwound with a quick Slay the Spire run before bed.

The first version is accurate. The second is a Tuesday evening you might actually want to re-read.

On the Free plan you can connect one integration, which is enough to try Steam on its own. Upgrading to Basic (up to 5 integrations) lets you combine your gaming activity with the rest of your day. See pricing on deariary.com for details.

When gaming activity is low

Some days you do not play anything. Work ran late, you went out with friends, or you simply were not in the mood.

On those days, deariary has no Steam data to include. If other integrations are connected, they carry the entry. If Steam is your only integration, the entry will be short.

Over a month of entries, the gaps form their own pattern. The week with no gaming at all might coincide with a work crunch visible in your GitHub and calendar data. The burst of late-night sessions might line up with a new release date. You do not need to track these correlations manually. They emerge when the diary holds all the pieces.

Non-Steam games

Steam covers PC gaming, but plenty of sessions happen elsewhere: console, Nintendo Switch, mobile, or DRM-free games.

For those, webhooks can bridge the gap. Send a JSON payload with the game name and session duration, and deariary weaves it into that day’s entry alongside your Steam data. Some users automate this with Discord bots or IFTTT applets. Others send a quick webhook from a shortcut on their phone when they finish a console session.

The diary does not care where the data originates. A webhook gaming session and a Steam session appear the same way in your entry.

Setting it up

Connecting Steam to deariary takes about 30 seconds:

  1. Go to app.deariary.com
  2. Open Settings and find the Integrations section
  3. Click Steam and sign in with your Steam account

Steam uses OpenID for authentication, so you sign in through Steam’s own login page. No API keys to copy, no webhook URLs to configure. deariary reads your activity starting the next morning.

One thing to note: your Steam profile visibility setting does not affect the integration. deariary fetches data through the server API using your Steam ID, which works regardless of whether your profile is set to public, friends-only, or private.

What surprised us

We have been running deariary with Steam connected since the early prototype. A few observations from daily use.

Comfort games are a barometer. Everyone has a game they return to when the rest of life gets heavy. In the diary, these returns are easy to spot: the same title reappearing during exam weeks, after tough deadlines, or during stretches of bad weather. Nobody sets out to track this, but the pattern is unmistakable once you read a few months back.

Twenty-minute sessions matter more than you think. A brief round before bed barely registers in the moment. But a month of those rounds, visible in the diary as a quiet thread of the same game every weeknight, shows how you spent your evenings that quarter. The individual sessions blur together. The accumulated diary entries do not.

Achievements land differently in a diary. A notification banner disappears in seconds. The same achievement in a diary entry, surrounded by what else happened that day (a rough morning, a good run, a birthday dinner), becomes a marker for that specific day. “Beat the final boss the same week you finished that project” is something you will remember. A bare date next to a trophy icon is not.


Your Steam library already records every minute you play. deariary turns those minutes into a diary that preserves not just the games, but the evenings they were part of. The sessions become context, the achievements become markers, and the data that was already there starts telling you something about how you spend your time.

Connect Steam to deariary

Written by deariary team. No robots were forced to keep a diary.

Your life, automatically written.

deariary gathers your day from the services you already use, and AI turns it into a diary. No writing required - just a daily record you can look back on.

Turn your passing days into your own diary.

Try it free