{"id":52462,"date":"2016-08-12T08:00:07","date_gmt":"2016-08-12T15:00:07","guid":{"rendered":"https:\/\/redfindevelop.wpengine.com\/blog\/?p=52462"},"modified":"2020-10-05T13:11:57","modified_gmt":"2020-10-05T20:11:57","slug":"dates-are-not-timestamps","status":"publish","type":"post","link":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/","title":{"rendered":"Dates Are Not Timestamps"},"content":{"rendered":"<p>Every programmer will eventually find themselves writing a feature that requires handling of dates and times. And if you need to deal in any way with things like multiple time zones, daylight savings offsets, etc., you quickly realize that it&#8217;s substantially trickier than it might initially seem. For many applications, you can get by with being less than totally rigorous (how many social media users will care if the timestamp on their vacation photos is off by a couple hours?). But at Redfin, we need to deal with dates and times of things like open houses and tour appointments, deadlines for documents related to real estate transactions, etc. So complete rigor and precision is pretty important (the last thing you want is an agent waiting around at an open house where no one shows up because we&#8217;re displaying a time that&#8217;s off by a couple hours). And we&#8217;ve found that one notable potential pitfall is the problematic (but somewhat common) practice of representing dates as timestamps:<\/p>\n<p>Most programmers will be familiar with the notion of a \u201cdate-time\u201d (also often referred to as a \u201ctimestamp\u201d): a representation, in some syntax or another, of a specific instant in time. Some common representations are:<\/p>\n<ul>\n<li>A string with date and time, plus time zone, such as \u201c2016-06-20 17:30:45 PDT\u201d<\/li>\n<li>A number of seconds or milliseconds since the \u201cUnix epoch\u201d (Jan. 1, 1970 UTC)<\/li>\n<\/ul>\n<p>And most programming languages have a data type, either built-in or from a well-known third-party library, for representing this concept: Boost for C++ has the local_date_time class, Joda-Time for Java has the DateTime class, Python has the datetime class, SQL has the timestamp type, and so on.<\/p>\n<p>But what if you have something that\u2019s \u201cjust a date\u201d? For example, say you need to represent the fact that \u201cEaster of 2015 happened on April 5, 2015\u201d. In this context, \u201cApril 5, 2015\u201d is just a date, with no time portion meaningfully attributable to it. One common approach is to represent this as a date-time with zero time portion: in string form, something like \u201c2015-04-15 00:00:00\u201d. This might seem vaguely reasonable (especially when working in a programming language such as JavaScript that has no separate \u201cdate-only\u201d data type for representing something that\u2019s just a date with no time portion meaningfully attributable to it). But it really is a flawed approach:<\/p>\n<p>If I parse \u201c2015-04-15 00:00:00\u201d into, say, the corresponding Python datetime object, how is code far upstream going to know that this object is supposed to represent the date \u201cApril 5, 2015\u201d (*just* the date, irrespective of time), and not the specific instant of midnight on that day? I\u2019m relying on every developer who writes code consuming that object to \u201cjust know\u201d (somehow) that it represents the date generically and not the specific instant. This might seem like a trivial nit to pick, but in fact this exact issue can cause quite significant bugs, as the following real-world example demonstrates (yes, this really happened):<\/p>\n<ol>\n<li>I have a value that\u2019s \u201cjust a date\u201d of Oct. 10, 2015, and store it in the database as a SQL timestamp of \u201c2015-10-10 00:00:00\u201d<\/li>\n<li>A select in the application server returns this as a Java object representing \u201c2015-10-10 00:00:00 PDT\u201d (PDT, i.e. Pacific Daylight Time, because the servers and JVMs are all set to the Pacific time zone).<\/li>\n<li>I have a serialization layer that serializes all such date-time objects by deriving the Unix timestamp (milliseconds since the Unix epoch), so my object is returned to a browser Ajax call as the integer 1444460400000 (i.e. the milliseconds-from-epoch value corresponding to \u201c2015-10-10 00:00:00 PDT\u201d)<\/li>\n<li>In the browser it is deserialized to a JavaScript Date object by calling Date(1444460400000) (note that despite the name, a JavaScript Date is a timestamp-like object that represents both a date and time)<\/li>\n<li>If the browser\u2019s time zone is Pacific (same as my server time zone) then the resulting object will correctly display as \u201c2015-10-10 00:00:00\u201d. My UI is only interested in the date part of this, and will show \u201c2015-10-10\u201d as desired.<\/li>\n<li>If the browser time zone is *east* of Pacific time, say Eastern time, the resulting object will display as \u201c2015-10-10 03:00:00\u201d, but that\u2019s still OK since the UI logic is only showing the date part.<\/li>\n<li>If the browser time zone is *west* of Pacific time, say Hawaii, the resulting object will display as \u201c2015-10-09 21:00:00\u201d &#8212; note how the date part got shifted *back* to the *previous* day. <span style=\"color: #ff0000;\">Oops! Application logic showing the date portion will show the wrong day!!<\/span><\/li>\n<\/ol>\n<p>If this date were some critical deadline (e.g. \u201csubmissions must be postmarked no later than Oct. 10, 2015\u201d), this would be a severe bug indeed!<\/p>\n<p>Why did this happen? Because I\u2019m using the wrong tool for the job. Upstream code receives my date-time object (\u201c2015-10-10 00:00:00 PDT\u201d) and takes it at face value, treating it as a specific instant in time (exactly midnight on Oct. 10 PDT) whose component fields (day, hour, etc.) are subject to shifts depending on the time zone of the client consuming it.<\/p>\n<p>A better choice, when my data is intrinsically \u201cjust a date\u201d with no time portion meaningfully attributable to it, is to use a data type that correctly models that concept: For example the new java.time package available in Java 8 has a LocalDate class that internally is just three integers (year, month, day), Joda-Time has a similar LocalDate class, Python datetime module has the date class, etc. \u00a0For relational databases, the SQL standard defines the DATE datatype for exactly this purpose. For languages that have no such \u201cdate only\u201d class available, it is relatively trivial to implement your own (three integers: year, month, day).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Adventures in date and time handling: the less than obvious perils of representing \u201c4 July 2016\u201d as \u201c2016-07-04 00:00:00\u201d<\/p>\n","protected":false},"author":13423,"featured_media":52495,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[57],"tags":[78],"dashboard":[],"coauthors":[],"class_list":["post-52462","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-company-news","tag-career"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.7 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Dates Are Not Timestamps - Redfin Real Estate News<\/title>\n<meta name=\"description\" content=\"Adventures in date and time handling: the less than obvious perils of representing \u201c4 July 2016\u201d as \u201c2016-07-04 00:00:00\u201d\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dates Are Not Timestamps\" \/>\n<meta property=\"og:description\" content=\"Adventures in date and time handling: the less than obvious perils of representing \u201c4 July 2016\u201d as \u201c2016-07-04 00:00:00\u201d\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/\" \/>\n<meta property=\"og:site_name\" content=\"Redfin Real Estate News\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/redfin\" \/>\n<meta property=\"article:published_time\" content=\"2016-08-12T15:00:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-10-05T20:11:57+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.redfin.com\/news\/wp-content\/uploads\/2016\/08\/time-scaled-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1707\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Nick Sredanovic\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@redfin\" \/>\n<meta name=\"twitter:site\" content=\"@redfin\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nick Sredanovic\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/\"},\"author\":{\"name\":\"Nick Sredanovic\",\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/#\\\/schema\\\/person\\\/a9536de78712ed4d872c1a603ba0c168\"},\"headline\":\"Dates Are Not Timestamps\",\"datePublished\":\"2016-08-12T15:00:07+00:00\",\"dateModified\":\"2020-10-05T20:11:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/\"},\"wordCount\":944,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.redfin.com/news\\\/wp-content\\\/uploads\\\/2016\\\/08\\\/time-scaled-1.jpg\",\"keywords\":[\"Career\"],\"articleSection\":[\"Company News\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/#respond\"]}],\"copyrightYear\":\"2016\",\"copyrightHolder\":{\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/\",\"url\":\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/\",\"name\":\"Dates Are Not Timestamps - Redfin Real Estate News\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.redfin.com/news\\\/wp-content\\\/uploads\\\/2016\\\/08\\\/time-scaled-1.jpg\",\"datePublished\":\"2016-08-12T15:00:07+00:00\",\"dateModified\":\"2020-10-05T20:11:57+00:00\",\"description\":\"Adventures in date and time handling: the less than obvious perils of representing \u201c4 July 2016\u201d as \u201c2016-07-04 00:00:00\u201d\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.redfin.com/news\\\/wp-content\\\/uploads\\\/2016\\\/08\\\/time-scaled-1.jpg\",\"contentUrl\":\"https:\\\/\\\/www.redfin.com/news\\\/wp-content\\\/uploads\\\/2016\\\/08\\\/time-scaled-1.jpg\",\"width\":1800,\"height\":1200},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/dates-are-not-timestamps\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.redfin.com/news\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dates Are Not Timestamps\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/#website\",\"url\":\"https:\\\/\\\/www.redfin.com/news\\\/\",\"name\":\"Redfin Real Estate News\",\"description\":\"The latest real estate news and research from technology-powered residential real estate company, Redfin.\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.redfin.com/news\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/#organization\",\"name\":\"Redfin\",\"url\":\"https:\\\/\\\/www.redfin.com/news\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.redfin.com\\\/news\\\/wp-content\\\/uploads\\\/2020\\\/10\\\/Redfin-News-Logo.png\",\"contentUrl\":\"https:\\\/\\\/www.redfin.com\\\/news\\\/wp-content\\\/uploads\\\/2020\\\/10\\\/Redfin-News-Logo.png\",\"width\":1100,\"height\":235,\"caption\":\"Redfin\"},\"image\":{\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/redfin\",\"https:\\\/\\\/x.com\\\/redfin\",\"https:\\\/\\\/www.instagram.com\\\/redfinrealestate\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/redfin\",\"https:\\\/\\\/www.pinterest.com\\\/redfin\\\/\",\"https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/Redfin\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/#\\\/schema\\\/person\\\/a9536de78712ed4d872c1a603ba0c168\",\"name\":\"Nick Sredanovic\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.redfin.com/news\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/Redfin-2025-Logo-B-150x150.jpgb98d1f204d143aab6d4240c534a1657e\",\"url\":\"https:\\\/\\\/www.redfin.com/news\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/Redfin-2025-Logo-B-150x150.jpg\",\"contentUrl\":\"https:\\\/\\\/www.redfin.com/news\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/Redfin-2025-Logo-B-150x150.jpg\",\"caption\":\"Nick Sredanovic\"},\"description\":\"Tech lead on the data team.\",\"sameAs\":[\"https:\\\/\\\/plus.google.com\\\/108863234657941082481\"],\"url\":\"https:\\\/\\\/www.redfin.com/news\\\/author\\\/nick-sredanovicredfin-com\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Dates Are Not Timestamps - Redfin Real Estate News","description":"Adventures in date and time handling: the less than obvious perils of representing \u201c4 July 2016\u201d as \u201c2016-07-04 00:00:00\u201d","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/","og_locale":"en_US","og_type":"article","og_title":"Dates Are Not Timestamps","og_description":"Adventures in date and time handling: the less than obvious perils of representing \u201c4 July 2016\u201d as \u201c2016-07-04 00:00:00\u201d","og_url":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/","og_site_name":"Redfin Real Estate News","article_publisher":"https:\/\/www.facebook.com\/redfin","article_published_time":"2016-08-12T15:00:07+00:00","article_modified_time":"2020-10-05T20:11:57+00:00","og_image":[{"width":2560,"height":1707,"url":"https:\/\/www.redfin.com\/news\/wp-content\/uploads\/2016\/08\/time-scaled-1.jpg","type":"image\/jpeg"}],"author":"Nick Sredanovic","twitter_card":"summary_large_image","twitter_creator":"@redfin","twitter_site":"@redfin","twitter_misc":{"Written by":"Nick Sredanovic","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/#article","isPartOf":{"@id":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/"},"author":{"name":"Nick Sredanovic","@id":"https:\/\/www.redfin.com\/news\/#\/schema\/person\/a9536de78712ed4d872c1a603ba0c168"},"headline":"Dates Are Not Timestamps","datePublished":"2016-08-12T15:00:07+00:00","dateModified":"2020-10-05T20:11:57+00:00","mainEntityOfPage":{"@id":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/"},"wordCount":944,"commentCount":0,"publisher":{"@id":"https:\/\/www.redfin.com\/news\/#organization"},"image":{"@id":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/#primaryimage"},"thumbnailUrl":"https:\/\/www.redfin.com\/news\/wp-content\/uploads\/2016\/08\/time-scaled-1.jpg","keywords":["Career"],"articleSection":["Company News"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/#respond"]}],"copyrightYear":"2016","copyrightHolder":{"@id":"https:\/\/www.redfin.com\/news\/#organization"}},{"@type":"WebPage","@id":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/","url":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/","name":"Dates Are Not Timestamps - Redfin Real Estate News","isPartOf":{"@id":"https:\/\/www.redfin.com\/news\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/#primaryimage"},"image":{"@id":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/#primaryimage"},"thumbnailUrl":"https:\/\/www.redfin.com\/news\/wp-content\/uploads\/2016\/08\/time-scaled-1.jpg","datePublished":"2016-08-12T15:00:07+00:00","dateModified":"2020-10-05T20:11:57+00:00","description":"Adventures in date and time handling: the less than obvious perils of representing \u201c4 July 2016\u201d as \u201c2016-07-04 00:00:00\u201d","breadcrumb":{"@id":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/#primaryimage","url":"https:\/\/www.redfin.com\/news\/wp-content\/uploads\/2016\/08\/time-scaled-1.jpg","contentUrl":"https:\/\/www.redfin.com\/news\/wp-content\/uploads\/2016\/08\/time-scaled-1.jpg","width":1800,"height":1200},{"@type":"BreadcrumbList","@id":"https:\/\/www.redfin.com\/news\/dates-are-not-timestamps\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.redfin.com\/news\/"},{"@type":"ListItem","position":2,"name":"Dates Are Not Timestamps"}]},{"@type":"WebSite","@id":"https:\/\/www.redfin.com\/news\/#website","url":"https:\/\/www.redfin.com\/news\/","name":"Redfin Real Estate News","description":"The latest real estate news and research from technology-powered residential real estate company, Redfin.","publisher":{"@id":"https:\/\/www.redfin.com\/news\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.redfin.com\/news\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.redfin.com\/news\/#organization","name":"Redfin","url":"https:\/\/www.redfin.com\/news\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.redfin.com\/news\/#\/schema\/logo\/image\/","url":"https:\/\/www.redfin.com\/news\/wp-content\/uploads\/2020\/10\/Redfin-News-Logo.png","contentUrl":"https:\/\/www.redfin.com\/news\/wp-content\/uploads\/2020\/10\/Redfin-News-Logo.png","width":1100,"height":235,"caption":"Redfin"},"image":{"@id":"https:\/\/www.redfin.com\/news\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/redfin","https:\/\/x.com\/redfin","https:\/\/www.instagram.com\/redfinrealestate\/","https:\/\/www.linkedin.com\/company\/redfin","https:\/\/www.pinterest.com\/redfin\/","https:\/\/en.wikipedia.org\/wiki\/Redfin"]},{"@type":"Person","@id":"https:\/\/www.redfin.com\/news\/#\/schema\/person\/a9536de78712ed4d872c1a603ba0c168","name":"Nick Sredanovic","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.redfin.com\/news\/wp-content\/uploads\/2025\/06\/Redfin-2025-Logo-B-150x150.jpgb98d1f204d143aab6d4240c534a1657e","url":"https:\/\/www.redfin.com\/news\/wp-content\/uploads\/2025\/06\/Redfin-2025-Logo-B-150x150.jpg","contentUrl":"https:\/\/www.redfin.com\/news\/wp-content\/uploads\/2025\/06\/Redfin-2025-Logo-B-150x150.jpg","caption":"Nick Sredanovic"},"description":"Tech lead on the data team.","sameAs":["https:\/\/plus.google.com\/108863234657941082481"],"url":"https:\/\/www.redfin.com\/news\/author\/nick-sredanovicredfin-com\/"}]}},"_links":{"self":[{"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/posts\/52462","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/users\/13423"}],"replies":[{"embeddable":true,"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/comments?post=52462"}],"version-history":[{"count":0,"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/posts\/52462\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/media\/52495"}],"wp:attachment":[{"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/media?parent=52462"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/categories?post=52462"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/tags?post=52462"},{"taxonomy":"dashboard","embeddable":true,"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/dashboard?post=52462"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.redfin.com\/news\/wp-json\/wp\/v2\/coauthors?post=52462"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}