Waitrose and John Lewis are to stop selling Christmas crackers containing plastic toys from 2020 as part of plans to cut down on single-use plastic.
Instead crackers will be filled with toys made from recyclable materials and will not use plastic glitter.
The company is one of a number of retailers pledging to cut the amount of plastic in its Christmas range.
Friends of the Earth welcomed the move but said it was "a shame" it could not happen sooner.
Julian Kirby, plastics campaigner for the charity, said: "Getting rid of the plastic tat from Christmas crackers will go some way to cutting down on the pollution of the festive season, but we'd like to challenge all supermarkets to give us the gift of a Christmas completely free of unnecessary plastic."
Explaining the 2020 target, Dan Cooper, partner and head Christmas buyer at John Lewis, said: "One of the challenges I face as a buyer is that we plan 18 months ahead so it takes time for changes to become a reality."
Louise Edge, head of Greenpeace UK's ocean plastics campaign, also called for more action from retailers, including offering reusable gift bags and boxes and selling Christmas cards loose, rather than wrapped in plastic.
"Single-use plastic should never be a Christmas tradition, so we welcome John Lewis and Waitrose getting rid of throwaway plastic toys from crackers," she said.
"However this should be just step one for retailers."
John Lewis is also selling "fill your own" Christmas crackers, which the company said now account for one in three packs sold.
The company said it had also reduced the amount of plastic glitter on its own-brand range of Christmas wrapping paper, gift bags, advent calendars and crackers by two-thirds, as well as removing plastic wrapping from the majority of individual cards it sells.
Last December, it announced plans to ban plastic glitter from these own-label products by Christmas 2020.
Standard glitter is made from etched aluminium bonded to polyethylene terephthalate - a form of microplastic that can find its way into the oceans and harm animals.
What are other retailers doing?
Tesco has switched to a plastic-free, biodegradable glitter on its Christmas range of trees, plants and flowers this year, as well as removing glitter from its own-brand wrapping paper, tags and single Christmas cards.
Marks and Spencer has removed glitter from its entire Christmas range this year, as part of a commitment to make all its cards and gift-wrapping products glitter-free by the end of 2020.
Sainsbury's has ditched all plastic packaging from its Christmas crackers this year.
Asda removed plastic windows and film from more than 1.6m mince pies last Christmas, as part of a drive to reduce plastic from its own-brand packaging.
What can I do to cut down on single-use plastic this Christmas?
- Most wrapping paper contains plastic - instead you could use brown paper jazzed up with fabric ribbon, string or a potato print design
- Ditch plastic decorations like tinsel and glittery baubles and go for natural alternatives like sprigs of holly and mistletoe or hang edible biscuits to decorate your tree
- If you already have an artificial plastic tree, Friends of the Earth advises you keep using it to make it last as long as possible
- If you opt for a real tree it recommends one approved by the Soil Association or with an FSC logo to ensure it has been grown sustainably
- Alternatively you could hire a tree for the festive season which can then be replanted
- E-cards, sent online, are a waste-free alternative to the traditional Christmas card
- Shop-bought advent calendars tend to be full of plastic packaging - try a fabric version which can be filled with treats of your choice