I think it's safe to say that all product releases come with some sort of delay or scope change, it's to be expected. But, it can oftentimes impact the morale of the team if there are repetitive delays.
The biggest thing you can do is be transparent from the beginning. Oftentimes, if you're working closely with your product teams, you can get a sense if things may slip and dates may change. When you get that feeling, it's important to have a conversation with your PMs about it so that you can relay information to your team as soon as possible.
I have three tips...
First, turn delays into a positive. Not always possible, but when you can, it's a big help. For instance, if a launch slips a month or quarter, position it to the group as an opportunity to do that extra thing on the website that could help increase conversion or write those extra blog posts to be used in social that could drive better awareness. Again, it's not always possible, especially if you work for a larger business where teams workloads are planned out, but it can help.
Second, always come with a new plan. This goes hand in hand with the above point, but if you hear from your PMs that a launch is delayed, make sure to go to your stakeholders with new dates and timelines - echoing that they have more time to build out these deliverables.
Third, drive home the point that building software or launching new products is really, really hard. Oftentimes, development teams hit unforeseen complications that delay things - it's to be expected. From the beginning, set this tone with the team and let them know that there may be changes in scope and that it's important to be flexible, because at the end of the day whatever you're launching is going to have a great impact on your business or customers.
I've never worked anywhere where releases don't get delayed - delays happen. The best you can do is to stay in as close communication with your key stakeholders as possible - informing them of updates in real-time. You won't lose trust with your team if you're open and honest: put a stake in the ground and establish a launch date if there isn't one, so that everyone can start planning their respective workstreams and you can ensure a successful launch. But also clearly communicate that there's a chance the date may slip. You can hold a launch planning session on a regular cadence (every week, leading up to a critical launch) where you bring stakeholders together to discuss latest timelines and workstream updates.
My advice is to separate the ship and launch functions. In my experience when they are paired together, there is so much unproductive internal thrash when eng encounters delays and all the downstream teams have to re-adjust their plans. Instead, group new products and features into larger campaigns where if something doesn’t get released on time, you still have a compelling story to tell and your campaign doesn’t get derailed. Set expectations that all features must ship by X date to be included in the campaign.
This also has the benefit of creating more impactful launch moments where you can tell a bigger, richer story about the value you are delivering to customers through a plethora of new offerings.