 <p><code>UserDefaults</code> is just a bunch of pairs of keys and values. So, you could assign a boolean value ("hidden") for each product:</p> <pre><code>// get the current product - this depends on how your table is set up let product = products[indexPath.row] // set the boolean to true for this product UserDefaults.set(true, forKey: product) </code></pre> <p>Then, wherever you're initializing your products, add:</p> <pre><code>// only include elements that should not be hidden products = products.filter({ UserDefaults.boolForKey($0) == false }) </code></pre> <p>You could also store all of the </p>