Ok hows this for a theory.
What if Aziraphale lied to Crowley in that final heart wrenching scene?
We know that lying is a big thing for Aziraphale in this season. But what if he lied at the end to protect someone. That someone being Crowley.
When the Metatron gives Aziraphale the coffee and he asks if he should drink it, the Metatron states that he has ingested things before in his time. Not drunk coffee but more likely ingested other fallen angels into his being.
I diverge, but there has been a smattering of Aziraphale lying throughout the entire season. When he lies to the angels about Jobs children and when he lies to the archangels about performing the biggest miracle at 25 lazerii was for Maggie and Nina to fall in love. He has little smatterings of lies throughout each episode, but those are the main ones.
They say things happen in 3 so the first big lie, Jobs children, the second big lie, Maggie and Nina love and the third big lie could only be lying to Crowley about going back to heaven with him.
What if the Metatron threatened Aziraphale about Crowley, being that the book of life theory wasnt really used too much in this season, that he would erase Crowley from the book of life if he stayed with him.
I mean look at how flustered Aziraphale gets when Crowley calls him out. Asking... no, begging he said no.
Aziraphale is given an option by the Metatron, give me coffee (Aziraphale goes to heaven to keep Crowley safe) or give me death (Crowley is erased from the book of life if Aziraphale doesnt return). This makes sense to me because the line Metatron asks Nina is emphasised greatly. "Does anyone choose death?" Then when Nina answers no he goes along the "predictable" line.
Now, surely, this is what he meant when he asked Nina this question. It isnt really explored further than the initial line, but there has to be meaning to it because of the emphasis.
Also, what could have changed Aziraphales mind so quickly? He first says to the Metatron that he has nothing left to say, then comes back not even 10 minutes later stating he is returning to heaven and Crowley can come.
Just seems a little suspicious if you ask me.
So what if Aziraphale did lie to Crowley to protect him. He knows that Crowley would never return to heaven, so this is the perfect way to keep him safe without hinting that something is wrong.
Because we all know that Crowley knows what they were going to do to Gabriel for stopping the oncoming apocalypse, and now his best friend is going back to the place that tried to kill Aziraphale with hellfire.
If Crowley knew that Aziraphale had been threatened, there would be no stopping him from going to heaven and bringing dread and doom along with him.
Crowley knows that with Aziraphale going back to heaven that he will be surrounded by people who hate him, and i think Aziraphale knows this also but is still trying to protect Crowley by lying.
The way he has to compose himself after the kiss because he knew that the Metatron would be back shortly.
And then the way that the Metatron asks "how did he take it?" Instead of is he coming with you.