URLs should only be grouped into a single application within Dynatrace - falling into whichever rule matches first, with rules at the top taking priority over lower rules. If you want to test to see which application a URL might fall into, you can use the 'Check your existing detection rules' option within the 'Web and Mobile Monitoring' settings page, as shown in the screenshot below. Hope this helps.
Many issues in app detection rules comes from fact, that domain name of app (as seen in browser) can be changed on route until request arrives to agent, where app detection executes. I have customer, where standard application domain name xy.com is not detectable on agent and app has to be detected via specific virtualhost.domain name.
You can check which domain name is correct in requests metadata in backend service requests.
We had similar issue and what @rastislav_danis is mentioning was our problem yet to this day we still can't figure out where the URL is changing. We thought it was our Firewall VIP but wasn't there either. The problem URL wasn't significant enough for us to spend any more time on so we generalized the DT criteria to capture it.
Very early on in our implementation we had issues where rules were just not in the correct priority order and it caused too much collect and sometimes not enough collection.
I must say that DT is very accurate in that once the URL falls into a bucket, it's done, it will never fall into more than one bucket. It's truly, a situation where the computer does what and only what the human tells it to do.
So, I would suggest going over the rules from the top down in extreme detail to find the problem.