In lots of cases, primarily those that take time and require additional resources, charges are not laid right away. This is because once the information is laid (aka charges), it begins the Jordan clock (See R. v Jordan case law).
Once a charge is laid, trial must happen within 18 months. If police are unable to gather the evidence in time, it is not a good idea to get charges laid right away. In some cases it makes sense if a victim’s safety is in jeopardy, such as domestic violence.
An example of something taking time would be the following:
Police execute a search warrant and electronic devices are seized. Now either the search warrant includes the search of the actual device or a second search warrant must be granted. Now let’s say that part was done. The electronic devices along with the warrant must be sent to the appropriate parties to extract the data. After that, the data must be analyzed. This all takes several months to complete in many cases.
Many people complain why the police aren’t doing anything and/or are slow, but that’s an explanation for everything to ensure things are done properly and lawfully. Should the 18 months elapse and trial does not happen, all charges are dropped.
This is my simple quick explanation.
Source: I am a Canadian Police Officer.