The comparison is exact. Both sides get stringified and compared with === — no case folding, no partial match. If the cell says Admin and the step says admin, that is a miss, and grep -c admin would still find it because grep matched the substring in Administrator or the case-insensitive habit in your head. Look at the actual cell.
The second thing is which file you grepped. data/<env>/users.csv replaces data/common/users.csv for that environment, so the admin can be in the file you searched and absent from the file that was loaded.
bash
sdods data preview projects/shop/data/staging/users.csv
If the row is there and spelled exactly right, come back with the preview output.
Worth knowing that CSV values are cast — 42 arrives as a number, true as a boolean — but the where comparison stringifies both sides, so casting almost never causes this. Case does, and trailing punctuation in a hand-edited file does.