To enter a fixed timestamp in Google Sheets, select a cell and press Ctrl+Alt+Shift+; on Windows; use =NOW() if you need a formula that updates, or use a short Apps Script to timestamp new entries automatically. A fixed timestamp stays as entered, while NOW() can change when the spreadsheet recalculates. The right method depends on whether you are recording one event, creating a live time value, or logging each new row.
What You’ll Need
- A Google account and a spreadsheet open in Google Sheets in a web browser.
- For a one-time entry, nothing beyond the cell where you want the timestamp.
- For automatic logging, permission to edit the spreadsheet and open its Apps Script editor.
If you are collaborating, confirm that you can edit the sheet rather than only view it. A spreadsheet’s locale and time zone affect how dates are interpreted and displayed, so check those settings if the timestamp needs to match a particular region.
Step-by-Step
- Choose the kind of timestamp you need. A fixed timestamp records a moment and does not change later; this is usually best for an audit trail, a completed task, or a form response you are recording manually. A formula timestamp is calculated by Sheets and can update. An automated timestamp is useful when you want a time to appear beside each new entry without typing it yourself. Decide before entering data, because a live formula is not a substitute for an unchanging record.
- Enter a fixed timestamp with the keyboard shortcut. Click the cell where the timestamp should go. On Windows, press Ctrl+Alt+Shift+; to insert the current date and time as a static value. If you only need the date, press Ctrl+; . For the time only, press Ctrl+Shift+; . The date and time shortcut inserts the value at the moment you use it; it will not tick forward like a clock. If your keyboard layout or browser intercepts a shortcut, use the shortcut list under Help > Keyboard shortcuts in Sheets, or type the value directly.
- Type a timestamp yourself when you need a specific time. Select a cell and enter a date and time in a format recognized by the spreadsheet’s locale, such as
11/3/2026 2:30 PMin a month/day/year locale. Press Enter to commit it. If you are recording a past event, enter that event’s actual date and time rather than using the shortcut, which inserts the current moment. Be cautious with dates such as 03/11/2026: some locales read that as March 11, while others read it as 3 November. - Format the cell so the whole timestamp is visible. Select the timestamp cell or range, then choose Format > Number > Date time. If that display is not suitable, use Format > Number > Custom date and time and select or build a pattern that includes the date and the time. For example, a display with year, month, day, hours, minutes, and seconds makes entries easier to compare. Formatting changes how a value appears, not the moment stored in the cell. Widen the column if the value displays as hashes or appears cut off.
- Use NOW() for a formula-based timestamp. With the target cell, such as A2, selected, enter
=NOW()and press Enter. Sheets displays the current date and time as a calculated value. If only a date appears, apply Format > Number > Date time. NOW() is volatile: it may update when the sheet recalculates, so it is appropriate for a current-time display or a calculation, not a permanent log of when a row was first entered. - Freeze a NOW() result if you need it to stop changing. Select the formula cell and copy it. Then use Edit > Paste special > Values only to replace the formula with its current result. Check that the formula bar no longer shows
=NOW(); the cell should contain a date/time value instead. This is useful if you already used a formula and want to keep the timestamp it currently shows. Do this carefully: pasting values removes the formula, and the value will not refresh afterward. - Set up an automatic timestamp beside new entries, if needed. For a simple log, put headings such as Entry and Timestamp in A1 and B1. In Sheets, open Extensions > Apps Script, replace the starter code with the script below, and click Save. Return to the sheet and enter a value in one cell in column A, starting at row 2. If column B in that row is blank, the script writes the current date and time there and formats it. This simple trigger runs when a person edits the sheet; it does not timestamp rows just because a formula recalculated.
function onEdit(e) {
const cell = e.range;
// Handle one-cell edits in column A, below the header.
if (cell.getColumn() !== 1 || cell.getRow() < 2 ||
cell.getNumRows() !== 1 || cell.getNumColumns() !== 1 ||
e.value === undefined) return;
const timestampCell = cell.getSheet().getRange(cell.getRow(), 2);
if (!timestampCell.isBlank()) return;
timestampCell.setValue(new Date());
timestampCell.setNumberFormat('yyyy-mm-dd hh:mm:ss');
}
The script is an optional automation, not a requirement for ordinary timestamps. It leaves an existing timestamp alone if you edit the entry again. To record a fresh timestamp for that row, clear the timestamp cell in column B and then make a new single-cell edit in column A. The example intentionally ignores multi-cell pastes so it does not silently stamp an entire pasted range in an unexpected way.
Common Mistakes
- Using NOW() for a permanent log. NOW() can recalculate, so an old row may show a newer time than when it was created. Use the keyboard shortcut or the script for a fixed record, or copy and paste the formula result as values.
- Typing a date that the locale interprets differently. A date such as 04/05/2026 is ambiguous. Check File > Settings for the spreadsheet locale, or enter a clearly ordered date and confirm the displayed result before relying on it.
- Changing the format and expecting the stored time to change. Number formatting only changes the display. It cannot correct an incorrect date or time value; edit the underlying value if the timestamp itself is wrong.
- Confusing a time-only value with a full timestamp. A shortcut for the time alone does not also record the date. Use the date-and-time shortcut or enter a full date and time if you need to identify the exact day.
- Expecting a formula to preserve the moment it was first entered. A formula such as
=NOW()is not a one-time stamp. Replacing it with its value, or using a static-entry method, prevents later recalculation from changing the record. - Assuming the script handles every kind of edit. The sample is designed for a single-cell edit in column A. It skips headers, multi-cell pastes, and rows where column B already contains a timestamp. It also does not run when a formula result changes by itself.
Tips
- Use a consistent display format. For a work log, a year-first pattern such as yyyy-mm-dd hh:mm:ss sorts clearly as text and shows seconds when you need them. If seconds are not useful, choose a shorter date-and-time display instead. You can apply the format to a whole timestamp column before entering data.
- Check the spreadsheet time zone. Open File > Settings and review the General settings, including Time zone and Locale. The sheet’s time zone matters when interpreting dates and times and when a script creates a Date value. Choose the setting that matches the records you intend to keep, especially when collaborators are in different regions.
- Keep the raw timestamp separate from presentation. Store the actual date/time in one column and use formatting to control how it looks. That makes it easier to sort, filter, calculate elapsed time, or display seconds later without retyping the entry.
- Use clear column headings. Labels such as Submitted at or Last updated help collaborators distinguish an event timestamp from a date someone typed manually. If you use the sample script, keep the entry column in A and timestamp column in B, or adjust the script’s column numbers to match your layout.
- Know the Excel difference. This guide’s menus, shortcuts, and Apps Script apply to Google Sheets in a browser. Excel has its own shortcuts and automation tools, and Excel formulas or menu paths should not be assumed to behave identically. If you open the file in Excel, check the values and automation separately.
Troubleshooting
The shortcut does nothing. Confirm that a spreadsheet cell is active, rather than the browser address bar or a text editor. Keyboard layouts and browser shortcuts can affect key combinations. Check Help > Keyboard shortcuts in Google Sheets for the shortcuts available on your device, or type the date and time directly. On a Mac, the key combinations differ from Windows; consult that same Sheets shortcut list rather than assuming Ctrl-based Windows keys will work.
The cell shows a number instead of a date and time. Sheets stores dates and times as numeric values. Select the cell and choose Format > Number > Date time. If it still looks wrong, inspect the cell’s value and the spreadsheet locale; applying a display format cannot repair text that Sheets never recognized as a date.
The timestamp appears as text or does not sort chronologically. The entry may have been parsed as text because its date format does not match the spreadsheet locale. Try entering the date in a format recognized by that locale, then apply a date-time format. To check, select the cell and look at its alignment and formula bar, but verify by sorting a small test range before changing an important log.
The displayed hour is unexpected. Review File > Settings and the spreadsheet time zone. Also check whether the entered time was intended as AM or PM and whether collaborators are viewing the same spreadsheet settings. Formatting cannot convert a wrongly entered time into the intended one.
The script does not add a timestamp. Make sure the code is saved in the spreadsheet’s bound Apps Script project, that the edit was a single-cell change in column A below row 1, and that the matching cell in column B is empty. The script will not run merely because a formula changed or because data was pasted into multiple cells. Open the Apps Script project and check its execution history for errors; confirm that the user editing the sheet has permission to make the intended change.
The timestamp changes when you did not expect it to. If the cell contains =NOW(), it is a live formula. Copy the cell and use Edit > Paste special > Values only to keep the displayed moment, or enter a static timestamp instead. If a script created the value, check whether the script or another automation is updating that cell.
Frequently Asked Questions
Is a Google Sheets timestamp permanent?
A timestamp entered with the date-and-time shortcut or typed as a recognized value stays fixed unless someone edits it. A value from NOW() can update because it is a formula. The sample Apps Script writes a fixed value and leaves it alone when the entry is edited again.
What is the formula for the current date and time?
With the result cell selected, enter =NOW(). Format the cell as Date time if necessary. Remember that it can recalculate, so freeze it as a value when you need an unchanging record.
Can I insert only the current date or only the current time?
Yes. On Windows, Ctrl+; inserts the date and Ctrl+Shift+; inserts the time. Use the full date-and-time shortcut when both are required. Check the in-app keyboard shortcut list if your device or keyboard layout uses different keys.
Can I make Sheets timestamp a row automatically?
Yes. A bound Apps Script with an onEdit trigger can write a timestamp when a user edits a designated input cell. The example above handles one-cell edits in column A and writes to column B; it does not automatically handle formula changes or multi-cell pastes.
Why does my timestamp show a different time for a collaborator?
Check the spreadsheet’s time zone under File > Settings. Time zone settings, how a value was entered, and the way it is displayed can affect what collaborators see. Agree on a time zone for shared logs and use a consistent date-time format.
Related
- Clear the To Field Cache in Outlook: Step-by-Step Guide
- Clear Calendar Cache in New Outlook: Step-by-Step
- Clear Email Address Cache in Outlook: Step-by-Step
Try it: the Date Difference Calculator: days, months, years and weekdays between two dates, with the DATEDIF formulas.
More in How-to basics
- Google Sheets Filter Custom Formula: How It WorksYes. In Google Sheets, choose Data > Create a filter, open a column’s filter menu, then select Filter…
- Google Sheets ARRAYFORMULA with VLOOKUP: How It WorksIn Google Sheets, combine ARRAYFORMULA with VLOOKUP to look up many values at once and return the results…
- Google Sheets 2D SUMIF: Sum Values by Row and ColumnGoogle Sheets has no built-in 2D SUMIF function, but you can sum a table by matching a row…
- How to Flip the Order of Cells in Excel Without Re-typingTo flip cells in Excel, add a helper column containing 1, 2, 3, and so on, select the…
- SUMIF Negative Values in Google Sheets: A Clear GuideTo add negative numbers in Google Sheets, use SUMIF with the criterion "<0". If the values are in…
- How to Change Your Outlook Inbox View and Layout SettingsTo change how your Outlook inbox looks, open the view or layout controls for your version of Outlook,…
Sources: Function behaviour and menu paths: Microsoft Support documentation for Excel. Method & sources
Spotted an error in this guide? Let us know.