Outgoing HTTP request monitoring for Laravel, compared
You may already have something that records your app's outbound calls. Laravel's own Nightwatch, Pulse and Telescope all do, and so do NightOwl, Laravel Spy and a handful of other packages. They record different things and keep them for different lengths of time, so the useful question is which of them answers the one you have.
What each one does with an outgoing request
| Tool | Records | Failures | Kept |
|---|---|---|---|
| Requizon | Every transfer, rolled up by API, host and path | Connection, HTTP and application errors, with the failed body | 14 days of calls, a year of hourly stats |
| Nightwatch | Calls in sampled traces, grouped by host | 4xx and 5xx counts; calls with no response are not counted | 14 to 90 days by plan |
| NightOwl | The same capture as Nightwatch, in your Postgres | As Nightwatch | 14 days raw, 90 days of rollups |
| Pulse | Calls over a threshold, 1 s by default | Not recorded | 7 days |
| Telescope | Each call in full, locally by default | Status and response body per entry | 24 hours |
| Laravel Spy | Each call in full, to a table | Status and response body per row | 30 days, if you schedule its clean-up |
Retention figures are each tool's default. Nightwatch's depends on the plan, and the rest are settings you can change. NightOwl and Laravel Spy only prune once you schedule their commands. The pages below give the detail and cite where each figure comes from.
Head to head
Four of these do far more than watch outgoing requests, and the pages only compare that part. Each one says where the other tool is the better choice.
Hosted APM for the whole app · Hosted, free tier then from $20/mo by event volume
Requizon vs Laravel Nightwatch
Nightwatch monitors the whole application and groups outgoing requests by host. Requizon monitors only outgoing requests, down to the path and the failure.
Nightwatch's capture, your own Postgres · Hosted dashboard, flat plans from $5/mo
Requizon vs NightOwl
Both keep your telemetry in a database you own. NightOwl stores everything Nightwatch captures in Postgres; Requizon stores only outgoing requests, in far more detail.
Self-hosted dashboard, slow calls only · Free, MIT
Requizon vs Laravel Pulse
Pulse shows you which outgoing requests were slow. Requizon shows those too, along with the ones that failed fast.
Debugger, one entry per call · Free, MIT
Requizon vs Laravel Telescope
Telescope shows you one outgoing request in full while you build. Requizon shows you all of them, over weeks, in production.
Logs every call to a table · Free, MIT
Requizon vs Laravel Spy
Laravel Spy logs every call in full, headers and bodies included. Requizon records less about each call and a great deal more about each API.
The rest of the field
These get no page of their own: one has not been updated in years, one only logs Saloon requests, and the general APMs cover far more than outgoing requests.
Logs calls, with a retry button · Free, MIT
Laravel Blanket
Wraps Laravel's HTTP client, logs requests and responses with masking and pruning, and lets you retry a logged request from its dashboard. Its README calls it a "highly opinionated fun project" and points to other tools for serious monitoring, and the repository has had no commits since January 2023.
Logs Saloon requests only · Free, MIT
Barstool
The Saloon project's own logger: every Saloon request and response, with its connector and request class, written to your database for you to query in a database tool. There is no dashboard. If all of your integrations are Saloon connectors, it records them with more context than a transport-level tool can. Requizon sees Saloon traffic once its middleware is on the Guzzle handler stack Saloon sends through.
HTTP spans inside traces · Usage-based subscription
A general APM (Sentry, Inspector, Datadog)
Each of these records outgoing HTTP calls as spans in the trace of the request or job that made them, which is the right place to look when one request was slow. Per-API history is usually something you build from those spans with the vendor's query tools, and what you can keep is set by the plan's retention and sampling.
We checked every claim here against each project's own documentation or source in September 2026. If one of them has changed since, email tech@boring-observability.dev and we will correct the page.
Common questions
How do I monitor outgoing HTTP requests in Laravel?
Every option hooks Laravel's HTTP client, and they differ in what they keep. Laravel Nightwatch groups outgoing requests by host inside a hosted APM, and NightOwl stores the same capture in your own PostgreSQL. Laravel Pulse lists the ones slower than a threshold. Laravel Telescope stores each call in full and, by default, only in local development. Logging packages such as Laravel Spy write every call to a table. Requizon records every call with its failure type, rolls them up by API, host and path, and charts them from your own database.
Is there a free way to monitor third-party API calls in Laravel?
Yes. Pulse is free and shows slow outgoing requests, Telescope is free and shows every call in detail, and Laravel Spy is free and logs every call to your database. Nightwatch has a free tier of 300,000 events a month. What none of the free options give you is a failure rate per API over weeks, which is the part Requizon charges for.
Which should I choose?
Start from the question you cannot answer today. "Which web request was slow, and why" is an APM question, and Nightwatch answers it for Laravel. "What exactly did we send and receive" is a logging question, answered by Telescope locally or Laravel Spy in production. "Which API is failing, and since when" is the question Requizon is built around.
Do these tools conflict with each other?
No. Nightwatch (and NightOwl, which uses its instrumentation), Pulse, Telescope, Laravel Spy and Requizon all observe Laravel's HTTP client without changing the request, so any combination records the same calls independently. The cost of running several is one more recorder per call, each writing to its own storage.