Scratch blocks come in several shapes, which help identify how they can snap together and are intended to be used:

Name Shape Use
Hat Block Hat block shape Hat block shape First block in a stack of blocks, and identifies what event will start execution of the block stack
Stack block Stack block shape Stack block shape The primary shape of block in a block stack, typically executes some kind of instruction
Cap block Cap block shape Cap block shape Can only be used as the last block in a block stack as it ends the execution of the stack
C block C block shape C block shape Also used in stacks, but allows for one or more stacks of blocks to be snapped inside that will be conditionally or repeatedly executed
Reporter block Reporter block shape Reporter block shape Snaps into the input field of another block, providing a value for that block to use
Boolean block Boolean block shape Boolean block shape Snaps into a boolean input field of another block, and provides a value of true or false