Offset is commonly used to create a dynamic range, that is one that is not statically defined, but grows (and shrinks) as the data grows and shrinks.
This is achieved by embedding a function within offset that counts how many items are in the data. For instance
=OFFSET($A$1,,,COUNTA($A:$A)-1,1)
will return an array of references column A for values. If you add more data to column A, then the array grows and so on. The COUNTA($A:$A) is counting the data in column A, 1 is being subtracted so as to not include a header.
This is especially useful in SUMPRODUCT, as this is an array processing function as so can be quite resource intensive, so keeping the range processed to the minimum is useful.
So a SUMPRODUCT formula such as
=SUMPRODUCT(--(LEFT($A:$A,5)="WHO54"),$B:$B)
which processes the whole column can be written as
=SUMPRODUCT(--(LEFT(OFFSET($A$1,,,COUNTA($A:$A)-1,1),5)="WHO54"),OFFSET($B$1,,,COUNTA($A:$A)-1,1))
and avoid all of that processing. Note that even the offset for column B counts the items in column A, it is impoirtant to ensure all arrays are the same size.
having two similar COUNTA functions in the formula is not good, this is unnecessary processing. Far better to put
=COUNTA($A:$A)-1
in a spare cell, say M1, and use
=SUMPRODUCT(--(LEFT(OFFSET($A$1,,,$M$1,1),5)="WHO54"),OFFSET($B$1,,,$M$1,1))
so that only one cell gets recalculated on a change n column A.