Heartbeat and PostSimulation events both have the same description, I’m not sure if they do the same thing but I feel like this is too confusing for people casually reading the documentation.
Page URL: https://create.roblox.com/docs/reference/engine/classes/RunService#Heartbeat
They do the same thing. The pre/post events are meant to replace the old heartbeat and stepped events.
Thanks for the report! I filed a ticket in our internal database.
PostSimulation is meant to be a replacement for Heartbeat. The reason is probably to have a more sleek naming convention.