How to Read the MetaTrader Journal and Experts Log Tabs
An order did not go through, an Expert Advisor sat idle through an obvious signal, or the connection dropped at exactly the wrong minute. The chart shows none of it, and the account statement shows only what succeeded.
The record of what actually happened is in the log, and MetaTrader keeps two of them in two different places. What follows sets out what each one holds, where each is written, what the commands on those tabs really do, and which clock the timestamps use. Every detail below comes from the MetaQuotes help for the platform concerned.
Key takeaways
- Two logs exist, not one. The Journal records the terminal and the trader; the Experts tab records what indicators and Expert Advisors did.
- They are written to two different folders. In MetaTrader 4 the terminal journal goes to LOGS and Expert logs go to MQL4 LOGS; in MetaTrader 5 the split is Logs and MQL5 Logs.
- Clear empties the tab and deletes nothing. The entries stay in the dated file, which is what makes a cleared tab recoverable.
- Open is also the flush. Running it saves the current entries to the file, so a file read without it can be missing the newest lines.
- The Journal timestamp follows the time zone of your own computer, while trade records are kept on the server clock.
- The built-in log viewer searches by exact words and is case sensitive, which is why an obvious search term often returns nothing.
Table of contents
- What the Two Tabs Actually Record
- Where Each Log File Is Written
- What Clear, Open and Send Really Do
- The Clock in the Journal Is Not the Server Clock
- Using the Log Viewer Without Wasting an Hour
- Reading a Failed Order in the Two Tabs Together
- What MT5 Logs That MT4 Never Did
- When the Log Cannot Answer the Question
- Frequently Asked Questions
What the Two Tabs Actually Record
The division is by actor, not by importance. One tab records the platform and the person using it; the other records the programs running inside it.
In MetaTrader 4 the Journal tab holds what the terminal and the person at it did during the session now running, laid out as two columns, a time and a message. MetaTrader 5 renames the same thing the platform log and widens the description: the moment the platform started, everything that has happened since, and every trade operation carried out.
The Experts tab is the other half. In MetaTrader 4 it holds everything an attached expert did: positions it opened or closed, orders it modified, and whatever the program itself chose to print. MetaTrader 5 widens that to indicators as well, and to the alerts and comments a program raises. A profile switch can also start programs that were attached when the workspace was saved, which is a reason to read this tab straight after one.
Both tabs mark entries by type, with separate icons for an informational message, a warning and an error. That typing is what makes an errors-only filter possible later. What a script trading through an API can and cannot reach is a separate question.
The practical consequence arrives immediately. A program that never sent an order leaves its trace in the Experts tab, while an order that was sent and refused leaves its trace in both. Looking in only one is how a diagnosis stalls at the first step.
Where Each Log File Is Written
Each tab has its own folder, and this is the detail that costs the most time when it is not known.
MetaTrader 4 keeps the terminal journal under a folder named LOGS, and puts Expert Advisor logs one level away, under MQL4 and then LOGS. MetaTrader 5 draws the same line between a Logs folder for the platform and MQL5 then Logs for programs. Either way a file is named for the day it covers, as YYYYMMDD.LOG. The virtual platform logs land somewhere else again, in a hosting folder inside the same data directory.
Neither tab shows the whole file. Both help pages state that the tab contains only the latest entries and that earlier ones are reviewed from the files, so a session running for days has scrolled far more out of view than it still displays.
So the reliable route to the right folder is the Open command in the context menu of the tab you are looking at. It opens the directory belonging to that tab, which removes the guess entirely.
| MetaTrader 4 | MetaTrader 5 | |
|---|---|---|
| Terminal and trader events | Journal tab, files in LOGS | Journal tab, platform log, files in Logs |
| Indicator and Expert Advisor events | Experts tab, files in MQL4 LOGS | Experts tab, Experts journal, files in MQL5 Logs |
| Columns in the tab | Time and Message | Time, Source and Message |
| Sending a log file from the platform | Not offered in the tab menu | Send, which attaches the current file to an internal message |
| File naming | YYYYMMDD.LOG | YYYYMMDD.LOG |
What Clear, Open and Send Really Do
Three commands in that context menu do more, or less, than their names suggest, and each of the three has cost someone a record.
Clear is the safest of them. Both platforms describe it as emptying the tab while leaving the entries themselves on disk, still readable in the log files. A tab cleared in frustration has lost nothing.
Open is the one that surprises people. As well as opening the folder, running it writes whatever is currently in the tab out to the file. Copy a file straight off the disk without doing that and it can be missing the last few minutes, which are usually the minutes in question.
Send exists only in MetaTrader 5, and it opens a message window with the current log file already attached, carried by the platform internal mail. That is a cleaner way to hand a file to a support desk than pasting fragments into a chat window.
The rest of the menu is display behaviour: Copy lifts a row to the clipboard, Auto Scroll keeps the view on the newest entry, and Auto Arrange and Grid change how the table is drawn.
The Clock in the Journal Is Not the Server Clock
This quietly breaks more investigations than any error code, because both numbers look like times and nothing on screen says they are measured differently.
MetaTrader 5 is explicit about it: the Time column in the journal follows whatever time zone the computer running the platform is set to. Trading records do not. Those are kept on the trade server clock, which is what a statement and an order ticket show.
So a log line and a statement line describing the same event can be hours apart on paper while being simultaneous in fact. Anyone comparing the two without converting first will conclude that the platform recorded something that never happened.
The habit that prevents it is small: when quoting a time from a log, say which clock it came from, and convert to broker server time before setting it beside anything from the account statement.
Using the Log Viewer Without Wasting an Hour
A separate viewer program ships with the platform for reading these files, and Viewer in either tab context menu is what opens it. It is stricter than it appears.
Its search matches whole words only and respects capitals, which MetaTrader 5 states plainly. Type a term in lower case and an entry that capitalises it stays hidden; type half a word and nothing matches. That is the usual reason a search of a file known to hold the event comes back empty.
A filter sits beside the search with three settings, Full, No connection and Errors only, and a time range can be specified before the request is run. Those two together are what turn a day of entries into the handful worth reading.
The order that works is narrow to broad. Set the time range around the minute in question, run it on Full first, then switch to Errors only. Starting with the error filter hides the informational lines that usually explain the error.
Reading a Failed Order in the Two Tabs Together
A refused order is the case that needs both tabs, because the request and the refusal are recorded by different actors.
Where an Expert Advisor sent it, the Experts tab carries what the program attempted and the code it received back.
The MQL4 documentation names those codes, and a handful account for most of what a retail account sees: 130 invalid stops, 134 not enough money, 132 market is closed, 136 off quotes, 135 price changed and 146 trade context is busy. Code 4109, trade is not allowed, is the one the documentation pairs with an instruction, to enable the live trading checkbox in the Expert Advisor properties.
Each of those points somewhere specific rather than at the platform. Invalid stops is a distance question and belongs with stops level and freeze level. Trade context is busy is a contention question, and it is the one that appears when running more than one expert advisor on a single terminal.
Price changed and off quotes are execution answers rather than platform faults, and what happens to the remainder of a partly filled request is decided by the fill policy on the order rather than by anything in the log.
The Journal supplies the context the Experts tab omits. If the same minute carries a disconnection or a reconnection, the order did not fail on its merits, and no amount of reading the code will say so.
What MT5 Logs That MT4 Never Did
Both platforms log the same trading events, and MetaTrader 5 records several categories that did not exist when MetaTrader 4 was written.
Copy trading is one: when an account synchronises with the provider it follows, the journal keeps the result. A hosting migration is another, and so is the detail behind anything bought from the Market. None of the three has an equivalent in the older platform.
The Source column is the other addition, and it is a practical one. Beside the time and the message, MetaTrader 5 names where each entry came from: Network, Alert, HistoryBase, Experts, or a specific Expert Advisor or indicator by name.
That single column is what lets a terminal running several programs be read at all, because it separates the entries by which program produced them without any convention on the part of the programmer.
When the Log Cannot Answer the Question
The log records what the terminal did and was told. Several questions people bring to it fall outside that boundary, and knowing which saves the search.
It does not explain why a price moved, and holds no view on whether a decision was sound. It records that an order was sent, and what came back.
It also stops at the edge of the broker infrastructure. What happened to a request after it left the terminal is a matter for the firm rather than for a file on your own computer.
And a terminal that was closed logged nothing while it was closed. Where a period matters and the platform was not running, the account history at the broker is the only record, not the folder on the machine. The same boundary applies to read-only investor access granted to another person, which shows the state of the account without recording what the terminal did to reach it.
Frequently Asked Questions
Where are MetaTrader log files stored?
In two places, not one. MetaTrader 4 keeps the terminal journal under LOGS and Expert Advisor logs under MQL4 then LOGS, while MetaTrader 5 uses Logs and MQL5 then Logs for the same split. Each file is named for the day it covers, as YYYYMMDD.LOG. The reliable way to reach either is Open in the context menu of the tab you want, because it lands in that tab own folder.
Does clearing the Journal tab delete the log?
No. Both platforms describe Clear as emptying the tab while leaving the entries themselves untouched on disk, still readable in the log files. Clearing is a display action. If a tab was emptied before anyone thought to read it, the record for that day is still in the dated file belonging to that tab.
What is the difference between the Journal tab and the Experts tab?
They record different actors. The Journal, which MetaTrader 5 calls the platform log, covers the terminal and the person at it for the session now running, from the moment the platform started through to each trade operation carried out. The Experts tab covers the programs: what an indicator or Expert Advisor opened, closed or modified, and whatever it printed itself.
Which time zone do MetaTrader log timestamps use?
MetaTrader 5 states that the Time column follows whatever time zone the computer running the platform is set to. Trading records use the trade server clock instead, which is why a log line and a statement line describing one event can sit hours apart. State which clock you mean whenever you quote a time from either.
Why does the log viewer search return nothing?
Because it is stricter than it looks. MetaTrader 5 states that the viewer matches whole words only and respects capitals, so a lower case term misses an entry that capitalises it and half a word misses everything. The filter matters as well: with Errors only selected, an informational line naming the same symbol stays hidden.
Sources checked 5 August 2026: MetaQuotes, MetaTrader 5 Help, Platform Logs page, for the two log types, the Time, Source and Message fields, the statement that Time follows the time zone on the user computer, the Logs and MQL5 Logs directories, the YYYYMMDD.LOG naming, the Open, Send, Viewer and Clear commands, and the log viewer search being by exact words and case sensitive with the Full, No connection and Errors only filter. MetaQuotes, MetaTrader 4 Help, Journal page, for the description of the Journal tab, the LOGS directory and the statement that cleared entries are not deleted physically. MetaQuotes, MetaTrader 4 Help, Experts page, for the description of the Experts tab and the MQL4 LOGS directory. MQL4 documentation, error codes page, for the meanings of codes 130, 132, 134, 135, 136, 146 and 4109. No figure on this page comes from a third-party article.
Disclaimer: This article is educational only and is not investment advice. Platform menus and directory names vary between builds and between broker distributions, so confirm the paths in the help of the version you are running. Leveraged trading carries risk, and the sum at stake can be lost in full.
