Is it possible to collect data for when an transaction was added to the pool to when it was added to the block?
There is no "the pool" or "the mempool" (which is what I assume you are talking about when you say "the pool"). Rather each node maintains its own mempool which may be different from another node's mempool. Because each node receives a given transaction at different times, the amount of time a transaction spends in the mempool will also vary from node to node.
However, you can still run a node and track how long a transaction spends in its mempool before being included in a block. In fact, Bitcoin Core already does this in order to do fee estimation, although the raw data is not exposed to users.