DM Eddie said: The step you are missing is spinning up from idle. Your session is still spun up, those attributes have been called and the chat will push out the attributes when you call them, I don't know of a way to idle a session other than leave for a while, but either way I just reproduced it in my session again, this is a niche issue, no idea if it has implications elsewhere. Reloading while holding the shift key down will completely reload the game. Loading it in another browser does likewise. The character attributes load into browser memory (including cache), not the server. There's no other place for it to exist. Except the API, and that's a different bucket, as discussed above. To re-re-verify this, I opened up a completely different game, my library campaign, which I rarely open directly. I changed "experience" to "strength" because I don't use the experience field, and did not want to invalidate the test by adding a value. Again, a fraction of a second, all fields reporting and in a campaign larger than my normal campaign by several times. I didn't even select the characters in question. Something appears to be happening in your game with that macro, granted, but there's no evidence that it's due to a systemic failure of lazy loading. As for the API message you posted, again, that's a different thing. getAttrByName is an API command, and has nothing to do with lazy loading or the internal code of Roll20. It would require some testing and poking around to determine where the API report is coming from.