Why would a guy ask ME OUT and then be the one to CANCEL? Doesn't make any sense to me?

Kinda long but please help me out.
weve been talking online for 4 months. We haven't officially met; just walked by each other in passing. Never talked to each other in person but we have spoken on Facebook for hours and hours straight. This past summer, I'd ask him out and he'd say yes but then disappear close to the day (twice it happened) so I stopped chasing him. A month ago he asked me out for the next night, and then he messaged me that he found out he worked at 4am and couldn't have me over that night (we are both night owls and stay up all night so want to meet at night naturally).
Just this Wednesday, HE messaged ME first. We talked for 5 hours straight. He kept telling me how awesome he thought I was; we have similar interests (we really get along great); and he kept hinting like "oh I should take you here" or "we should do this together this winter" or you should come over and watch this show with me, etc. Finally, we made plans for this last Friday, yesterday. Full plan. He said he worked a short shift Friday and didn't work til 4 pm Saturday ( he works at a coffee shop), so I said okay we should try for it, and his words were "no let's count on it." Friday came. I messaged him what time he was thinking, hours passed and it was 8pm without a word. So I sent him are we on still? And he sent me back saying sorry, he has been super busy at work as someone had a no call no show. I then responded and asked if "he wanted to hang out afterwards" (since he closes at 9pm which isn't late for either of us). And he never responded. He didn't go back online until midnight, but once I got online he signed off. What is his deal?
he's a small, more shy guy. He isn't a lady's man, and I don't see girl stuff on Facebook at all. I'm a pretty attractive female.. my friend thinks he got cold feet. But this has happened many times now and he must know I was hurt by this. Wouldn't he? We both were saying how excited we were for Friday. Why would he bail?
Why would a guy ask ME OUT and then be the one to CANCEL? Doesn't make any sense to me?
Add Opinion