Usually you can record an Event within a second after creating an Asset but sometimes it might fail even after 10 seconds or more.
The reason for this is that an Event cannot be recorded until the Asset status has reached COMMITED stage and sometimes the service message bus adds a delay to the progress through the stages.
If you are using the web UI you probably won't notice this but API users should check the confirmation_status attribute for the value COMMITED before recording an Event.