How to Add Attribute to Products
The first thing to do is to Add new product or Edit an existing product, then set Variable product as the product data, select Custom attribute or choose any of the existing attributes available, define the values and check the two options 'Visible on the product page' and 'Used for variations' and Save changes.
Next step is to go to Variation tab, click the dropdown to either Add new variation (as used in the next screenshot below) or select the option to Create variation from all attributes available. Add the Price and Image to all the variations respectively. Save the changes.
The GIF image below shows how it looks like in frontend after saving the settings above: