When I attempted a similar setup (Middleman + Google Sheets) I was quickly cornered into using fuzzy string matching to load data successfully. I ended up adding unplanned data validations that enabled the app to suggest corrections, but in retrospect I wish I'd done more validation in the spreadsheet itself for a tighter feedback loop early on.