diff --git a/.changeset/many-lemons-arrive.md b/.changeset/many-lemons-arrive.md
new file mode 100644
index 0000000000..11b97ec1fa
--- /dev/null
+++ b/.changeset/many-lemons-arrive.md
@@ -0,0 +1,5 @@
+---
+'@backstage/core-components': patch
+---
+
+Fixed an issue causing the `Select` component to show empty chips when some of the selected values did not match any item
diff --git a/packages/core-components/src/components/Select/Select.tsx b/packages/core-components/src/components/Select/Select.tsx
index 918ce301fb..ec7f87eb94 100644
--- a/packages/core-components/src/components/Select/Select.tsx
+++ b/packages/core-components/src/components/Select/Select.tsx
@@ -218,15 +218,20 @@ export function SelectComponent(props: SelectProps) {
renderValue={s =>
multiple && (value as any[]).length !== 0 ? (
- {(s as string[]).map(selectedValue => (
- el.value === selectedValue)?.value}
- label={items.find(el => el.value === selectedValue)?.label}
- clickable
- onDelete={handleDelete(selectedValue)}
- className={classes.chip}
- />
- ))}
+ {(s as string[]).map(selectedValue => {
+ const item = items.find(el => el.value === selectedValue);
+ return item ? (
+
+ ) : (
+ false
+ );
+ })}
) : (