In Google Sheets, rows don't really have an identity apart from their row number. In the image below we can see that the talk
State of UX is located in
This is fine, but if you add, move or delete rows, that row's location will change. In the image below
State of UX starts off in
row 4 and ends up in
In some circumstances this is fine, but if you have components like
Favorite or use Relations (that need to know the exact location of a row) and then the row number changes, these components will be confused as they are only looking at row numbers.
In the image below, you can see this happen with the
Favorite component after we delete some rows from our sheet. After we delete them, the item we favorited changes to a totally different talk.
The way to solve this issue is by giving each row a
Unique Identifier. In other words, a value in a column that will always be different for each row. And the easiest way to do this in Glide is by using the Row ID column in the data editor. 👇
If you don't have a Row ID column in your table, components like
Favorite will ask you to set a
Key or a
Topic. This is a manual way for you to connect that component with a column of unique values in your sheet so it can keep track of that row. However we just recommend adding the Row ID column and letting Glide take care of this side of things.