In my experience the things that generate graphic lag for my players with low end machines is when they have naughty extensions for roll20 installed, when I draw dynamic lighting lines for walls in a medium sized map and accidentally make them all the color of doorknockers doors/secret walls codes as this generates auras on every single wall entity. Also Auras, seriously roll20, solve auras. They kill low end machines performance insanely. Any api that turns on and displays auras en masse are lag generators immediately, this includes Health auras api, which is an awesome api, but it is just impossible to run with people playing from a phone or a 100 dollar chromebook. Torch API causes lag for a few low end machines, specifically the !flicker entities but I don't see the lag myself so I still use it cause its what UDL should have been. API's that try to keep persistent /fx running also generates graphic lag. Like tying a constant /fx to a status marker. The heartbeat api generates input lag for api's. The most mentioned comment that sheets/handouts cause lag is actually not true. It causes the load time of the session to be longer but it does not actually generate graphic lag unless you have the third party extensions installed. The third party extensions I feel are like 75% of the culprits for graphic/input lag but we all quietly dance around the subject cause we can't call people out for them. I have a session that has over 350 monster sheets with 7-15 token image sides to all the default tokens of the monsters in that session and it does not lag at all when I am inside making more monsters. It does however take a really long time to load.