| Post scrape One Reddit post, charged only when the row is actually written. Every charged row carries the post id, permalink, title, subreddit, post kind, score, upvote ratio, comment count and a real UTC timestamp; author is present on every post whose account still exists, and null rather than the literal string '[deleted]' when it does not. Link posts carry the destination URL and domain, image, gallery and video posts carry direct media URLs, and text posts carry the full self-text. Reddit repeats posts across pages whenever a feed reorders under you - which 'hot' constantly does - and this Actor deduplicates by post id, so you are never billed twice for the same post. Posts dropped by the score, comment-count, post-type, NSFW or pinned filters are never written and never charged. Per-source summary rows are never charged. Error rows are never charged. A request that came back challenged and was retried is never charged. | | |
| Comment scrape One comment row, charged only when it is written. Each carries the comment text, author, score, nesting depth, its parent comment id, a permalink, and the id and title of the post it belongs to, so a comment row reads on its own without a join. Comments are walked depth-first, so a parent always appears before its replies. Reddit hides part of a very large thread behind 'load more' stubs; those stubs carry counts but no text, and they are never counted as comments or charged - the post row is marked commentsTruncated true instead, so a partial thread is visible rather than silently passed off as complete. Removed and deleted comments are written with an empty body rather than the literal '[removed]', and are charged, because the tree position and score are still real data. Comments beyond the per-post limit are never written and never charged. | | |