Files
nexus/sreweekly/articles/486/07-we-had-issues-with-monzo-on-29th-july-here-s-what-happened-and-what-we.html
2026-09-12 17:23:01 +08:00

1 line
226 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html><html lang="en-GB" dir="ltr" translate="no" data-testid="v2"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, height=device-height, initial-scale=1, maximum-scale=5"/><link rel="icon" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/media/favicon.4c6ebc6f.svg" type="image/svg+xml"/><link rel="shortcut icon" type="image/png" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/media/favicon.87a9df8c.png"/><title>We had issues with Monzo on 29th July. Here&#x27;s what happened, and what we did to fix it.</title><link rel="icon" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/media/favicon.87a9df8c.png" sizes="any"/><link rel="icon" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/media/favicon.4c6ebc6f.svg" type="image/svg+xml"/><meta name="theme-color" content="#112231"/><meta property="og:site_name" content="Monzo"/><meta property="og:type" content="website"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta name="format-detection" content="telephone=no"/><meta property="og:title" content="We had issues with Monzo on 29th July. Here&#x27;s what happened, and what we did to fix it."/><meta property="og:description" content="Something went wrong doing an systems upgrade, affecting all Monzo services. To fix it, we&#x27;re changing how we do upgrades and store data."/><meta property="og:locale" content="en_GB"/><meta property="og:url" content="https://monzo.com/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th"/><meta property="og:image" content="https://images.ctfassets.net/ro61k101ee59/5kmerWyI44h2UllyM7eEtO/d67ffde652b3381dcf36aead6775dee5/29-July-OG.png"/><meta property="twitter:url" content="https://monzo.com/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th"/><meta property="twitter:card" content="summary_large_image"/><meta property="twitter:site" content="@monzo"/><meta property="twitter:description" content="Something went wrong doing an systems upgrade, affecting all Monzo services. To fix it, we&#x27;re changing how we do upgrades and store data."/><meta property="twitter:site_name" content="Monzo"/><meta property="twitter:image" content="https://images.ctfassets.net/ro61k101ee59/5kmerWyI44h2UllyM7eEtO/d67ffde652b3381dcf36aead6775dee5/29-July-OG.png"/><meta name="robots" content="follow,index"/><link rel="manifest" href="/manifest.json"/><link rel="canonical" href="https://monzo.com/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th" data-testid="canonical"/><meta name="description" content="Something went wrong doing an systems upgrade, affecting all Monzo services. To fix it, we&#x27;re changing how we do upgrades and store data."/><meta name="next-head-count" content="27"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta name="format-detection" content="telephone=no"/><meta name="theme-color" content="#112231"/><link rel="manifest" href="/manifest.json"/><link rel="stylesheet" href="/static/css/base.css"/><link nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" rel="preload" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/css/5ef8c2a18ce733da.css" as="style" crossorigin="anonymous"/><link nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" rel="stylesheet" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/css/5ef8c2a18ce733da.css" crossorigin="anonymous" data-n-g=""/><link nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" rel="preload" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/css/c0ea6062c7f54fcb.css" as="style" crossorigin="anonymous"/><link nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" rel="stylesheet" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/css/c0ea6062c7f54fcb.css" crossorigin="anonymous" data-n-p=""/><link nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" rel="preload" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/css/86d58df8530430e5.css" as="style" crossorigin="anonymous"/><link nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" rel="stylesheet" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/css/86d58df8530430e5.css" crossorigin="anonymous" data-n-p=""/><link nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" rel="preload" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/css/fd2a19260c1d7fcc.css" as="style" crossorigin="anonymous"/><link nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" rel="stylesheet" href="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/css/fd2a19260c1d7fcc.css" crossorigin="anonymous" data-n-p=""/><noscript data-n-css="ab7ae6ccf95b98373b8cd153fb3123e6d9d0"></noscript><script defer="" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" crossorigin="anonymous" nomodule="" src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/webpack-2457cc2fd54fbccb.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/framework-978a6051e6d0c57a.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/main-ed1933926a63d538.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/pages/_app-f6d77626e707dbbe.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/abe7ba4e-5b531d2653ca92d5.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/1395-e61510f04ddd5aaa.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/3955-28640e9867e07b0d.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/7014-88967f02c888abee.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/8402-6ac04c5461706c66.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/3456-5f62d1d06d97e774.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/2305-3b30f0e4f44c85a2.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/6800-3372244e42c17bdc.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/1508-085178230f6e05d2.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/33-8d6940bfed98ea2b.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/6288-03ba2f911e193453.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/8283-af849499565df4e6.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/7055-7e9c575a2ac068d7.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/632-cc6126dce12be11f.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/chunks/pages/blog/%5B...dynamic%5D-bb77c1cf1993c7c4.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/-IOrrmBQcEdnuWfJPIoxS/_buildManifest.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script><script src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/-IOrrmBQcEdnuWfJPIoxS/_ssgManifest.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0" defer="" crossorigin="anonymous"></script></head><body data-whatpersist="false" class=""><div id="__next"><header class="HeaderVariant_sticky__PakDB"><div class="HeaderVariant_header__M43dc"><a class="HeaderVariant_skipToContent__gKtbS" href="#mainContent" data-monzoanalytics-action-id="link_clicked" data-monzoanalytics-action-parameters="link_text=Skip to Content&amp;url=#mainContent&amp;currentUrl=/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th">Skip to Content</a><div class="HeaderVariant_headerContainer__yB1yF"><div class="HeaderVariant_headerLogoContainer__k3fGL"><a class="Button_button__ceqVx Button_none__26XPj Button_center__nHk65 HeaderVariant_logoLink___LBJB" data-monzoanalytics-no-tracking="true" target="_self" rel="" aria-label="Monzo Bank Homepage" tabindex="0" href="/"><span aria-hidden="true"><span class="Button_text__5HT7_"><div class="HeaderVariant_logoImageContainer__HlZzw"><svg xmlns="http://www.w3.org/2000/svg" width="138" height="24" viewBox="0 0 138 24" fill="none"><path d="M0.0789831 23.3769V0.626117H6.24562V3.66757C7.66062 1.33063 9.73947 0.196533 12.5345 0.196533C15.3296 0.196533 17.4434 1.38218 18.9457 3.8394C21.3565 1.34782 23.2082 0.196533 26.0906 0.196533C31.2965 0.196533 34.2313 3.08334 34.2313 8.37581V23.3769H27.593V11.0564C27.593 7.87749 26.9117 6.43409 24.3612 6.43409C21.8107 6.43409 20.3957 7.99778 20.3957 11.0564V23.3769H13.7224V11.0564C13.7224 7.87749 13.0412 6.43409 10.4906 6.43409C7.94014 6.43409 6.52513 7.99778 6.52513 11.0564V23.3769H0.0615234H0.0789831Z" fill="currentColor"></path><path d="M42.0932 3.59852C44.4166 1.31313 47.4737 0.0415649 50.6182 0.0415649C53.9723 0.0415649 56.8547 1.19285 59.1956 3.34077C61.6587 5.62616 62.9864 8.77071 62.9864 11.8465C62.9864 15.2832 61.816 18.1185 59.4926 20.4038C57.1167 22.7408 54.1994 23.9608 50.7056 23.9608C47.2117 23.9608 44.3293 22.7751 41.9709 20.3179C39.7349 18.0325 38.5645 15.1114 38.5645 11.9324C38.5645 8.75353 39.8048 5.83236 42.0932 3.58134V3.59852ZM50.7405 17.6201C53.7627 17.6201 56.2084 15.1286 56.2084 12.0355C56.2084 8.94254 53.7452 6.39941 50.7405 6.39941C47.7358 6.39941 45.2726 8.89099 45.2726 12.0355C45.2726 15.1801 47.7707 17.6201 50.7405 17.6201Z" fill="currentColor"></path><path d="M67.3008 23.3768V0.625995H73.7644L73.6771 3.66745C75.0921 1.38206 77.2582 0.196411 80.3153 0.196411C85.1019 0.196411 88.194 3.16913 88.194 8.37569V23.3768H81.3985V11.0563C81.3985 7.87737 80.7171 6.43397 78.0793 6.43397C75.4414 6.43397 73.9915 7.99765 73.9915 11.0563V23.3768H67.3183H67.3008Z" fill="currentColor"></path><path d="M117.053 3.59852C119.377 1.31313 122.434 0.0415649 125.578 0.0415649C128.932 0.0415649 131.815 1.19285 134.156 3.34077C136.619 5.62616 137.946 8.77071 137.946 11.8465C137.946 15.2832 136.776 18.1185 134.453 20.4038C132.077 22.7408 129.159 23.9608 125.666 23.9608C122.172 23.9608 119.289 22.7751 116.931 20.3179C114.695 18.0325 113.524 15.1114 113.524 11.9324C113.524 8.75353 114.765 5.83236 117.053 3.58134V3.59852ZM125.7 17.6201C128.723 17.6201 131.168 15.1286 131.168 12.0355C131.168 8.94254 128.705 6.39941 125.7 6.39941C122.696 6.39941 120.233 8.89099 120.233 12.0355C120.233 15.1801 122.731 17.6201 125.7 17.6201Z" fill="currentColor"></path><path d="M93.1387 23.3768V18.6342L102.659 6.51993H93.1387V0.626038H110.328V6.00443L101.926 17.4829H110.503V23.3768H93.1561H93.1387Z" fill="currentColor"></path></svg></div></span></span></a></div><div class="HeaderVariant_headerNavigationContainer__1NPta"><nav aria-label="Main" data-orientation="vertical" dir="ltr" data-testid="" class="Navigation_navigation__MiBte" data-toplevel-id="" data-subitem-id=""><div aria-hidden="true" class="NavigationSEORenderer_navigationSEORenderer__udHb5" data-testid="seo-navigation-renderer"><ul><li data-testid="seo-navigation-renderer-top-level-item"><span>Personal</span><ul><li data-testid="seo-navigation-renderer-landmark"><span>Current accounts</span><p>It all starts with our personal current account</p><ul><li data-testid="seo-navigation-renderer-landmark-link"><a href="/current-account/personal" data-monzoanalytics-no-tracking="true">Personal account</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/current-account/joint-account" data-monzoanalytics-no-tracking="true">Joint account</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/current-account/under-16s" data-monzoanalytics-no-tracking="true">Under 16s account</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/current-account/16-17" data-monzoanalytics-no-tracking="true">16-17s account</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/current-account" data-monzoanalytics-no-tracking="true">See all current accounts</a></li></ul></li><li data-testid="seo-navigation-renderer-landmark"><span>Plans</span><p>Upgrade your personal account from £3 a month</p><ul><li data-testid="seo-navigation-renderer-landmark-link"><a href="/current-account/plans" data-monzoanalytics-no-tracking="true">Compare plans</a></li></ul></li><li data-testid="seo-navigation-renderer-landmark"><span>Why Monzo?</span><p>Bank on an award-winning app</p><ul><li data-testid="seo-navigation-renderer-landmark-link"><a href="/features/pots" data-monzoanalytics-no-tracking="true">Organise with Pots</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/features/cashback" data-monzoanalytics-no-tracking="true">Earn cashback</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/features/travel" data-monzoanalytics-no-tracking="true">Travel without fees</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/features/monzo-split" data-monzoanalytics-no-tracking="true">Spend with friends</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/features/monzo-payday" data-monzoanalytics-no-tracking="true">Get paid into Monzo</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/security" data-monzoanalytics-no-tracking="true">Protect your money</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/features/see-your-mortgage" data-monzoanalytics-no-tracking="true">Connect your mortgage</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/features/payments" data-monzoanalytics-no-tracking="true">Pay and get paid</a></li></ul></li><li data-testid="seo-navigation-renderer-landmark"><span>Savings and ISAs</span><p>Put your money to work with flexible ways to save.</p><ul><li data-testid="seo-navigation-renderer-landmark-link"><a href="/savings-isas/instant-access" data-monzoanalytics-no-tracking="true">Instant Access</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/savings-isas/select-access" data-monzoanalytics-no-tracking="true">Select Access</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/savings-isas/cash-isas" data-monzoanalytics-no-tracking="true">Cash ISAs</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/savings-isas/under-16s-instant-access" data-monzoanalytics-no-tracking="true">Under 16s Savings</a></li><li data-testid="seo-navigation-renderer-landmark-link"><a href="/savings-isas" data-monzoanalytics-no-tracking="true">See all savings and ISAs</a></li></ul></li><li data-testid="seo-navigation-renderer-top-level-item"><span>Investments and pensions</span><ul><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/investments">Investments</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/pensions">Pensions</a></li></ul></li><li data-testid="seo-navigation-renderer-top-level-item"><span>Credit cards and loans</span><ul><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/flex">Flex Purchase credit card</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/flex-build">Flex Build credit card</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/loans">Loans</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/overdrafts">Overdrafts</a></li></ul></li><li data-testid="seo-navigation-renderer-top-level-item"><span>Insurance</span><ul><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/home-insurance">Home insurance</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/contents-insurance">Contents insurance</a></li></ul></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/mobile">Mobile plans</a></li><li data-testid="seo-navigation-renderer-top-level-item"><span>Help and support</span><ul><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/help">Help centre</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/security">Security at Monzo</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/fraud">Staying safe from fraud</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/money-worries">Support with money worries</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/switch">Switching to Monzo</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/help/monzo-plus">Plus help</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/help/monzo-premium">Premium help</a></li></ul></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/refer-a-friend">Refer a friend</a></li><li data-testid="seo-navigation-renderer-basic-link"><a data-monzoanalytics-no-tracking="true" href="/switch">Switch to Monzo</a></li></ul></li><li data-testid="seo-navigation-renderer-top-level-item"><span>Business</span><ul></ul></li></ul></div><div style="position:relative"><ul data-orientation="vertical" class="NavigationTopLevelItems_navigationTopLevelItemsList__fJhlK" dir="ltr"><li class="NavigationTopLevelItems_navigationTopLevelItem__bhgjl NavigationTopLevelItems_isMobileVisible__J__pz"><button data-monzoanalytics-action-id="link_clicked" data-monzoanalytics-action-parameters="link_type=navigation top level item&amp;link_text=Open Personal navigation&amp;link_location=header - Level 1&amp;currentUrl=/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th" id="radix-:Raar6:-trigger-personal" data-state="closed" aria-expanded="false" aria-controls="radix-:Raar6:-content-personal" class="NavigationTopLevelItems_navigationTopLevelItemTrigger__hezLF" aria-label="Open Personal navigation" data-radix-collection-item=""><div class="NavigationTopLevelItems_navigationTopLevelItemButton__sN1xB NavigationTopLevelItems_currentlySelected__TmMf_"><div class="NavigationTopLevelItems_navigationTopLevelItemButtonIcon__i8mOW"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 20 20" data-testid="personal-icon"><path fill="currentColor" fill-rule="evenodd" d="M10.5 10.833c3.606 0 6.544 2.149 6.663 4.832l.003.168c0 .92-.746 1.667-1.666 1.667h-10c-.92 0-1.667-.746-1.667-1.667 0-2.761 2.985-5 6.667-5Zm0-8.333a3.333 3.333 0 1 1 0 6.667 3.333 3.333 0 0 1 0-6.667Z" clip-rule="evenodd"></path></svg></div><span class="NavigationTopLevelItems_navigationTopLevelItemButtonContent__ACT5e">Personal</span><div class="NavigationTopLevelItems_navigationTopLevelItemButtonIcon__i8mOW"><svg width="1em" height="1em" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M15.88 9.29006L12 13.1701L8.11998 9.29006C7.72998 8.90006 7.09998 8.90006 6.70998 9.29006C6.31998 9.68006 6.31998 10.3101 6.70998 10.7001L11.3 15.2901C11.69 15.6801 12.32 15.6801 12.71 15.2901L17.3 10.7001C17.69 10.3101 17.69 9.68006 17.3 9.29006C16.91 8.91006 16.27 8.90006 15.88 9.29006Z" fill="currentColor"></path></svg></div></div></button><div class="NavigationTopLevelItems_navigationTopLevelToggleContainer__ag2Yv" role="button" tabindex="0" aria-label="Toggle Personal navigation menu"><div class="MobileNavigationToggle_mobileNavigationToggle__4Z_F_"><div class="MobileNavigationToggle_mobileNavigationToggleContent__sUo9Z"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 18h16c.55 0 1-.45 1-1s-.45-1-1-1H4c-.55 0-1 .45-1 1s.45 1 1 1Zm0-5h16c.55 0 1-.45 1-1s-.45-1-1-1H4c-.55 0-1 .45-1 1s.45 1 1 1ZM3 7c0 .55.45 1 1 1h16c.55 0 1-.45 1-1s-.45-1-1-1H4c-.55 0-1 .45-1 1Z"></path></svg></div></div></div></li><li><a class="NavigationTopLevelItems_navigationTopLevelItemButton__sN1xB" data-monzoanalytics-action-id="link_clicked" data-monzoanalytics-action-parameters="link_text=Business&amp;link_location=header - Level 1&amp;link_type=navigation&amp;url=/business-banking&amp;currentUrl=/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th" href="/business-banking"><div class="NavigationTopLevelItems_navigationTopLevelItemButtonIcon__i8mOW"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 20 20" data-testid="business-icon"><path fill="currentColor" fill-rule="evenodd" d="M10.834 1.667a2.5 2.5 0 0 1 2.495 2.353l.005.147V5h.833v12.5H5.834V5h.833v-.833A2.5 2.5 0 0 1 9.02 1.67l.147-.004h1.667ZM4.167 5v12.5h-.833c-.92 0-1.667-.746-1.667-1.667V6.667c0-.92.746-1.667 1.667-1.667h.833Zm11.667 0h.833c.92 0 1.667.746 1.667 1.667v9.166c0 .92-.747 1.667-1.667 1.667h-.833V5Zm-5-1.667H9.167a.834.834 0 0 0-.828.737l-.005.097V5h3.333v-.833a.833.833 0 0 0-.833-.834Z" clip-rule="evenodd"></path></svg></div><span class="NavigationTopLevelItems_navigationTopLevelItemButtonContent__ACT5e">Business</span></a></li></ul></div><div class="HeaderVariant_headerNavigationExtras__fnwGF"></div></nav></div><div class="HeaderVariant_mobilePrimaryCTAExperiment__gNqIQ"></div></div></div></header><main id="mainContent" class="Main_main__qK_Jw Main_secondary__AtY_D"><section class="BlogPostHero_BlogPostHero__zHlZw Section_section__bJela Section_alignItemsCenter__uAtDJ stack"><div class="Section_contentContainer__nIHcH"><div class="BlogPostHero_metadata__IlL_3"><time dateTime="9 August 2019" class="BlogPostHero_date__MLwY1"><span class="VisuallyHidden_root__K5ziU">Published on: </span>9 August 2019</time><a class="Button_button__ceqVx Button_primary__Rsc_A Button_center__nHk65" data-monzoanalytics-no-tracking="true" target="_self" href="/blog/topic/monzo-hq" rel="noopener noreferrer external"><span class="Button_text__5HT7_"><span class="VisuallyHidden_root__K5ziU">Published in: </span>Monzo HQ</span></a></div><div class="Block_block__umVpK Block_transparent__bO8GO Block_textCenter__ZMvZ5 Block_horizontalCenter__r3X72 Block_verticalMiddle__hz7OB Block_paddingHorizontalMedium__Yebwe Block_paddingVerticalMedium___sqTU Block_marginHorizontalAuto__iPHYU Block_marginVerticalNone__5PS5J"><div class="Block_contentContainer__zHay8"><h1 class="Title_title__ofmsr Title_primary__c1rix text-heading-1 Title_center__EKShs marginBottom marginTop" id="we-had-issues-with-monzo-on-29th-july-heres-what-happened-and-what-we-did-to-fix-it">We had issues with Monzo on 29th July. Here&#x27;s what happened, and what we did to fix it.</h1></div></div></div></section><div class="Section_container__hQZq_ Section_section__bJela Section_secondary__Yb8E4 stack Section_paddingtoplarge__e7z4X Section_paddingbottommedium__iiG8G"><div class="Section_contentContainer__nIHcH"><div class="___dynamic__articleContainer__ZfTwO"><article class="_prose_prose__aeteD"><aside class="BlogPostDisclaimer_BlogPostDisclaimer__GLNKM" data-testid="disclaimer"><div class="Text_text__CSJ_O Text_marginBottom___UK4L"><p>This blog post was accurate when we published it – head to<!-- --> <a class="Button_button__ceqVx Button_link__8caFw Button_inline__TsyTr Button_padWithSpaces__PFrni Button_center__nHk65" data-monzoanalytics-no-tracking="true" target="_self" href="https://monzo.com" rel="noopener noreferrer external"><span class="Button_text__5HT7_">monzo.com</span></a> <!-- -->or your Monzo app for the most up to date information.</p></div></aside><div class="Text_text__CSJ_O"><p>On the 29th July from about 13:10 onwards, you might have had some issues with Monzo. As we shared in <a href="https://monzo.com/blog/2019/07/30/we-had-issues-with-monzo-yesterday" data-monzoanalytics-action-id="link_clicked" data-monzoanalytics-action-parameters="link_type=inline&amp;link_location=Text inline&amp;link_text=an update&amp;url=https://monzo.com/blog/2019/07/30/we-had-issues-with-monzo-yesterday&amp;currentUrl=/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th">an update</a> at the time, you might not have been able to:</p></div><ul class="List_List__d5Gvb List_light__uu_Tn List_margin__M1ON_"><li><div class="Text_text__CSJ_O"><p>Log into the app</p></div></li><li><div class="Text_text__CSJ_O"><p>Send and receive payments, or withdraw money from ATMs</p></div></li><li><div class="Text_text__CSJ_O"><p>See accurate balances and transactions in your app</p></div></li><li><div class="Text_text__CSJ_O"><p>Get in touch with us through the in-app chat or by phone</p></div></li></ul><div class="Text_text__CSJ_O"><p>This happened because we were making a change to our database, that didn&#x27;t go to plan.</p></div><div class="Text_text__CSJ_O"><p>We know that when it comes to your money, problems of any kind are totally unacceptable. We&#x27;re really sorry about this, and we&#x27;re committed to making sure it doesn&#x27;t happen again.</p></div><div class="Text_text__CSJ_O"><p>We fixed the majority of issues by the end of that day. And since then, we&#x27;ve been investigating exactly what happened and working on plans to make sure it doesn&#x27;t happen again.</p></div><div class="Text_text__CSJ_O"><p>In the spirit of transparency, we&#x27;d like to share exactly what went wrong from a technical perspective, and how we&#x27;re working to avoid it in the future.</p></div><h2 class="Title_title__ofmsr Title_primary__c1rix text-heading-3 Title_left__V4Q3q" id="some-background">Some background</h2><h3 class="Title_title__ofmsr Title_primary__c1rix text-heading-4 Title_left__V4Q3q" id="we-use-cassandra-to-store-our-data-and-have-multiple-copies-of-everything">We use Cassandra to store our data, and have multiple copies of everything</h3><div class="Text_text__CSJ_O"><p>We use a database called <a href="https://en.wikipedia.org/wiki/Apache_Cassandra" data-monzoanalytics-action-id="link_clicked" data-monzoanalytics-action-parameters="link_type=inline&amp;link_location=Text inline&amp;link_text=Cassandra&amp;url=https://en.wikipedia.org/wiki/Apache_Cassandra&amp;currentUrl=/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th">Cassandra</a> to store our data. Cassandra is an open-source, highly-available, distributed data store. We use Cassandra to spread the data across multiple servers, while still serving it as one logical unit to our services.</p></div><div class="Text_text__CSJ_O"><p>We run a collection of 21 servers (which we call a cluster). And all the data we store is replicated across three out of the 21 servers. This means if something goes wrong with one server or we need to make a planned change, the data is entirely safe and still available from the other two.</p></div><div class="Text_text__CSJ_O"><p>Cassandra uses an element called the <strong>partition key</strong> to decide which three servers in the cluster of 21 are responsible for a particular piece of data.</p></div><div class="Block_block__umVpK Block_widthFull__Hgffj Block_transparent__bO8GO Block_textLeft__VQYuP Block_horizontalCenter__r3X72 Block_verticalMiddle__hz7OB Block_paddingHorizontalNone___78ZF Block_paddingVerticalNone__iiqDU Block_marginHorizontalNone__zWCSZ Block_marginVerticalMedium__bfxCr"><div class="Block_contentContainer__zHay8"><picture><source type="image/avif" srcSet="https://images.ctfassets.net/ro61k101ee59/0K9zDvgmPxo7vd7RJS3xb/a8c0d642a744a48f610057484f828ea7/_inc-platform-issues_-_Google_Slides.png?w=2400&amp;q=75&amp;fm=avif"/><source type="image/webp" srcSet="https://images.ctfassets.net/ro61k101ee59/0K9zDvgmPxo7vd7RJS3xb/a8c0d642a744a48f610057484f828ea7/_inc-platform-issues_-_Google_Slides.png?w=2400&amp;q=75&amp;fm=webp"/><img src="https://images.ctfassets.net/ro61k101ee59/0K9zDvgmPxo7vd7RJS3xb/a8c0d642a744a48f610057484f828ea7/_inc-platform-issues_-_Google_Slides.png?w=2400&amp;q=75" alt="A diagram showing a piece of data stored across three servers" width="1532" loading="lazy"/></picture></div></div><div class="HtmlSnippet_htmlSnippet__4_0bQ"><br><span>Here we have a piece of data represented by the pink square which is set to the value T</span></div><div class="Text_text__CSJ_O"><p>When we want to read data, we can go to any of the servers in the cluster and ask for a piece of data for a specific partition key. All reads and writes from our services happen with quorum. This means at least two out of three servers need to acknowledge the value before data is returned from or written to Cassandra.</p></div><div class="Text_text__CSJ_O"><p>The entire cluster knows how to translate the partition key to the same three servers that actually hold the data.</p></div><div class="Block_block__umVpK Block_widthFull__Hgffj Block_transparent__bO8GO Block_textLeft__VQYuP Block_horizontalCenter__r3X72 Block_verticalMiddle__hz7OB Block_paddingHorizontalNone___78ZF Block_paddingVerticalNone__iiqDU Block_marginHorizontalNone__zWCSZ Block_marginVerticalMedium__bfxCr"><div class="Block_contentContainer__zHay8"><picture><source type="image/avif" srcSet="https://images.ctfassets.net/ro61k101ee59/1HvwaK1B4xCuCrABd3AIrK/2eff99b007d306bb62f478909cbdc279/Untitled.png?w=2400&amp;q=75&amp;fm=avif"/><source type="image/webp" srcSet="https://images.ctfassets.net/ro61k101ee59/1HvwaK1B4xCuCrABd3AIrK/2eff99b007d306bb62f478909cbdc279/Untitled.png?w=2400&amp;q=75&amp;fm=webp"/><img src="https://images.ctfassets.net/ro61k101ee59/1HvwaK1B4xCuCrABd3AIrK/2eff99b007d306bb62f478909cbdc279/Untitled.png?w=2400&amp;q=75" alt="Diagram showing us reading the data from three servers" width="1404" loading="lazy"/></picture></div></div><h2 class="Title_title__ofmsr Title_primary__c1rix text-heading-3 Title_left__V4Q3q" id="we-were-scaling-up-cassandra-to-keep-apps-and-card-payments-working-smoothly">We were scaling up Cassandra to keep apps and card payments working smoothly</h2><div class="Text_text__CSJ_O"><p>As more and more people start using Monzo, we have to scale up Cassandra so it can store all the data and serve it quickly and smoothly. We last scaled up Cassandra in October 2018 and projected that our current capacity would tide us over for about a year.</p></div><div class="Text_text__CSJ_O"><p>But during this time, lots more people started using Monzo, and we increased the number of microservices we run to support all the new features in the Monzo app.</p></div><div class="Block_block__umVpK Block_widthFull__Hgffj Block_transparent__bO8GO Block_textLeft__VQYuP Block_horizontalCenter__r3X72 Block_verticalMiddle__hz7OB Block_paddingHorizontalNone___78ZF Block_paddingVerticalNone__iiqDU Block_marginHorizontalNone__zWCSZ Block_marginVerticalMedium__bfxCr"><div class="Block_contentContainer__zHay8"><picture><source type="image/avif" srcSet="https://images.ctfassets.net/ro61k101ee59/61pdYUleMaupifO14nlvXG/4a705c1ea61e66de89162437324611d2/Using_Envoy_as_a_Service_Proxy__Devops_Exchange_London__-_Google_Slides.png?w=2400&amp;q=75&amp;fm=avif"/><source type="image/webp" srcSet="https://images.ctfassets.net/ro61k101ee59/61pdYUleMaupifO14nlvXG/4a705c1ea61e66de89162437324611d2/Using_Envoy_as_a_Service_Proxy__Devops_Exchange_London__-_Google_Slides.png?w=2400&amp;q=75&amp;fm=webp"/><img src="https://images.ctfassets.net/ro61k101ee59/61pdYUleMaupifO14nlvXG/4a705c1ea61e66de89162437324611d2/Using_Envoy_as_a_Service_Proxy__Devops_Exchange_London__-_Google_Slides.png?w=2400&amp;q=75" alt="A graph showing the microservices we use going up over time" width="1608" loading="lazy"/></picture></div></div><div class="HtmlSnippet_htmlSnippet__4_0bQ"><br><span>We run a microservice architecture, and the number of services we run is growing as we offer more features.</span></div><div class="Text_text__CSJ_O"><p>As a result, during peak load, our Cassandra cluster was running closer to its limits than we&#x27;d like. And even though this wasn&#x27;t affecting our customers, we knew if we didn&#x27;t address it soon we&#x27;d start seeing an increase in the time it&#x27;d take to serve requests.</p></div><div class="Text_text__CSJ_O"><p>For some of our services (especially those we use to serve real time payments), taking longer to serve requests would mean we were slowing down the apps and card payments. And nobody wants to wait for a long time when they&#x27;re at the front of the queue to pay for their shopping!</p></div><div class="Text_text__CSJ_O"><p>So we planned to increase the size of the cluster, to add more compute capacity and spread the load across more servers.</p></div><div class="Block_block__umVpK Block_widthFull__Hgffj Block_transparent__bO8GO Block_textLeft__VQYuP Block_horizontalCenter__r3X72 Block_verticalMiddle__hz7OB Block_paddingHorizontalNone___78ZF Block_paddingVerticalNone__iiqDU Block_marginHorizontalNone__zWCSZ Block_marginVerticalMedium__bfxCr"><div class="Block_contentContainer__zHay8"><picture><source type="image/avif" srcSet="https://images.ctfassets.net/ro61k101ee59/6HMPWU13eTzCXiTSJ19Cdg/392cf825e5b5443e5d5df52ea499e557/_inc-platform-issues_-_Google_Slides__1_.png?w=2400&amp;q=75&amp;fm=avif"/><source type="image/webp" srcSet="https://images.ctfassets.net/ro61k101ee59/6HMPWU13eTzCXiTSJ19Cdg/392cf825e5b5443e5d5df52ea499e557/_inc-platform-issues_-_Google_Slides__1_.png?w=2400&amp;q=75&amp;fm=webp"/><img src="https://images.ctfassets.net/ro61k101ee59/6HMPWU13eTzCXiTSJ19Cdg/392cf825e5b5443e5d5df52ea499e557/_inc-platform-issues_-_Google_Slides__1_.png?w=2400&amp;q=75" alt="A diagram showing a before and after comparison of adding extra servers" width="1984" loading="lazy"/></picture></div></div><div class="HtmlSnippet_htmlSnippet__4_0bQ"><br><span>Adding more servers means we can spread the data more evenly and support a larger amount of queries in the future.</span></div><h2 class="Title_title__ofmsr Title_primary__c1rix text-heading-3 Title_left__V4Q3q" id="what-happened-on-29th-july-2019">What happened on 29th July 2019</h2><div class="Text_text__CSJ_O"><p>This is the timeline of events that happened on the day. All times are in British Summer Time (BST), on the 29th of July 2019.</p></div><div class="Text_text__CSJ_O"><p><strong>13:10</strong> We start scaling Cassandra by adding six new servers to the cluster. We have a flag set which we believe means the new servers will start up and join the cluster, but otherwise remain inactive until we stream data to them.</p></div><div class="Text_text__CSJ_O"><p>We confirm there&#x27;s been no impact using the metrics from both the database and the services that depend on it (i.e. server and client side metrics). To do this, we look for any increase in errors, changes in latency, or any deviations in read and write rates. All of these metrics appear normal and unaffected by the operation.</p></div><div class="Text_text__CSJ_O"><p><strong>13:14</strong> Our automated alerts detect an issue with Mastercard, indicating <strong>a small percentage of card transactions are failing</strong>. We tell our payments team about the issue.</p></div><div class="Text_text__CSJ_O"><p><strong>13:14</strong> We receive reports from Customer Operations (COps) that the tool they use to communicate with our customers isn&#x27;t working as expected. This meant <strong>we weren&#x27;t able to help customers through in app chat,</strong> leaving customers who&#x27;d got in touch with us waiting.</p></div><div class="Text_text__CSJ_O"><p><strong>13:15</strong> We declare an incident, and our daytime <a href="https://monzo.com/blog/2018/09/20/on-call" data-monzoanalytics-action-id="link_clicked" data-monzoanalytics-action-parameters="link_type=inline&amp;link_location=Text inline&amp;link_text=on-call&amp;url=https://monzo.com/blog/2018/09/20/on-call&amp;currentUrl=/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th">on-call</a> engineer assembles a small group of engineers to investigate.</p></div><div class="Text_text__CSJ_O"><p><strong>13:24</strong> The engineer who initiated the change to the database notices the incident and joins the investigation. We discuss whether the scale-up activity could have caused the issue, but discount the possibility as everything appears healthy. There&#x27;s no increase in errors, and the read and write rates look like they haven&#x27;t changed.</p></div><div class="Text_text__CSJ_O"><p><strong>13:24</strong> Our payments team identify a small code error in one of our Mastercard services, where a specific execution path wasn&#x27;t gracefully handling an error case. We believe this is the cause of the Mastercard issue, so get to work on a fix.</p></div><div class="Text_text__CSJ_O"><p><strong>13:29</strong> We notice that our internal edge is returning HTTP 404 responses.</p></div><div class="Text_text__CSJ_O"><p>Our internal edge is a service we&#x27;ve written and use to access internal services (like our customer operations tooling and our deployment pipeline). It does checks to make sure that we only give access to Monzo employees, and forwards requests to the relevant place.</p></div><div class="Text_text__CSJ_O"><p>This means our internal edge couldn&#x27;t find the destination it was looking for.</p></div><div class="Text_text__CSJ_O"><p><strong>13:32</strong> We receive reports from COps that <strong>some customers are being logged out of both the Android and iOS apps.</strong></p></div><div class="Text_text__CSJ_O"><p><strong>13:33</strong> <strong>We update our public </strong><a href="https://status.monzo.com" data-monzoanalytics-action-id="link_clicked" data-monzoanalytics-action-parameters="link_type=inline&amp;link_location=Text inline&amp;link_text=status page&amp;url=https://status.monzo.com&amp;currentUrl=/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th"><strong>status page</strong></a><strong> to let our customers know about the issue.</strong> This also shows up as a banner in our apps.</p></div><div class="Text_text__CSJ_O"><p><em>&quot;We&#x27;re working to fix a problem that is causing some card transactions to fail, or the Monzo app to display incomplete or old information. If affected, you may also be unable to login or receive bank transfers.&quot;</em></p></div><div class="Text_text__CSJ_O"><p><strong>13:33</strong> The Mastercard fix is ready to deploy, but we notice our deployment tooling is also failing.</p></div><div class="Text_text__CSJ_O"><p><strong>13:39</strong> We deploy the Mastercard fix using a planned fallback mechanism. And <strong>we see an immediate improvement in card transactions succeeding</strong>.</p></div><div class="Text_text__CSJ_O"><p><strong>13:46</strong> We identify our internal edge isn&#x27;t correctly routing internal traffic. Beyond authentication and authorisation, it validates that it&#x27;s &#x27;internal&#x27; by inspecting the request and using our configuration service to match against our private network range.</p></div><div class="Text_text__CSJ_O"><p>A configuration service is a Monzo microservice that provides a simple request-response (RPC) interface for other services to store and retrieve key-value pairs representing configuration. Internally, it uses Cassandra to store its data.</p></div><div class="Text_text__CSJ_O"><p>We conclude that either the configuration service is down, or our network range has changed. We quickly rule out the latter and focus on the service.</p></div><div class="Text_text__CSJ_O"><p><strong>13:48</strong> We try to get data from our configuration service directly and realise it&#x27;s returning a 404 (not found) response for the key we attempted to retrieve. We&#x27;re confused, as we believe that if the configuration service wasn&#x27;t working, it&#x27;d have a much wider impact than we were seeing.</p></div><div class="Text_text__CSJ_O"><p><strong>13:53</strong> From the metrics, we see successful read and writes to the configuration service, which is surprising given we&#x27;ve just seen it fail to retrieve data. It feels like we&#x27;re seeing conflicting evidence.</p></div><div class="Text_text__CSJ_O"><p><strong>13:57</strong> We search for some other keys in the configuration service and realise they&#x27;re still there.</p></div><div class="Text_text__CSJ_O"><p><strong>14:00</strong> We bypass the configuration service interface and query Cassandra directly. We confirm that the key used by the internal edge is in fact missing from Cassandra.</p></div><div class="Text_text__CSJ_O"><p><strong>14:02</strong> At this point we believe we&#x27;re facing an incident where <em>some</em> of our data isn&#x27;t available, so we turn our focus to Cassandra.</p></div><div class="Text_text__CSJ_O"><p><strong>14:04</strong> Despite our earlier fix for Mastercard, we can see it&#x27;s still not fully healthy and the payments team keeps working on it. This means that a <strong>small number of card payments are still failing</strong>.</p></div><div class="Text_text__CSJ_O"><p><strong>14:08</strong> We query whether the new Cassandra servers have taken ownership of some parts of the data. We don&#x27;t think this is possible given our understanding of what&#x27;s happened so far, but we keep investigating.</p></div><div class="Text_text__CSJ_O"><p><strong>14:13</strong> We issue a query for some data in Cassandra and confirm the response is coming from one of the new servers. At this point, we&#x27;ve confirmed that something we thought was impossible, had in fact happened.</p></div><div class="Text_text__CSJ_O"><p><strong>The new servers had joined the cluster, assumed responsibility for some parts of the data (certain partition keys to balance the load), but hadn&#x27;t yet streamed it over. This explains why some data appeared to be missing.</strong></p></div><div class="Block_block__umVpK Block_widthFull__Hgffj Block_transparent__bO8GO Block_textLeft__VQYuP Block_horizontalCenter__r3X72 Block_verticalMiddle__hz7OB Block_paddingHorizontalNone___78ZF Block_paddingVerticalNone__iiqDU Block_marginHorizontalNone__zWCSZ Block_marginVerticalMedium__bfxCr"><div class="Block_contentContainer__zHay8"><picture><source type="image/avif" srcSet="https://images.ctfassets.net/ro61k101ee59/wcWFwS4HBG1DC8ANWIZUM/6e94d3ec6b43cc82932d67551b477197/Untitled__1_.png?w=2400&amp;q=75&amp;fm=avif"/><source type="image/webp" srcSet="https://images.ctfassets.net/ro61k101ee59/wcWFwS4HBG1DC8ANWIZUM/6e94d3ec6b43cc82932d67551b477197/Untitled__1_.png?w=2400&amp;q=75&amp;fm=webp"/><img src="https://images.ctfassets.net/ro61k101ee59/wcWFwS4HBG1DC8ANWIZUM/6e94d3ec6b43cc82932d67551b477197/Untitled__1_.png?w=2400&amp;q=75" alt="A diagram showing the new servers in the cluster, missing the data" width="1282" loading="lazy"/></picture></div></div><div class="Text_text__CSJ_O"><p><strong>14:18</strong> We begin decommissioning the new servers one-by-one, to allow us to return data ownership safely into the original cluster servers. Each node takes approximately 8-10 minutes to remove safely.</p></div><div class="Text_text__CSJ_O"><p><strong>14:28</strong> We remove the first node fully, and we notice an immediate reduction in the number of 404s being raised.</p></div><div class="Text_text__CSJ_O"><p>Our internal customer support tooling starts working again, so <strong>we can respond to customers using in-app chat</strong>.</p></div><div class="Text_text__CSJ_O"><p><strong>15:08</strong> We removed the final Cassandra node, and the immediate impact is over. <strong>For the majority of customers, Monzo starts working again as normal.</strong></p></div><div class="Text_text__CSJ_O"><p><strong>15:08 → 23:00</strong> We keep working through all the data that had been written while the six new servers were actively serving reads and writes. We do this through a combination of replaying events which we store externally, and running internal reconciliation processes which check for data consistency.</p></div><div class="Text_text__CSJ_O"><p><strong>23:00</strong> We confirm that <strong>all customers are now able to access their money, use Monzo as normal, and contact customer support if they need to.</strong></p></div><h2 class="Title_title__ofmsr Title_primary__c1rix text-heading-3 Title_left__V4Q3q" id="we-misunderstood-the-behaviour-of-a-setting">We misunderstood the behaviour of a setting</h2><div class="Text_text__CSJ_O"><p>The issue happened because we expected the new servers to join the cluster, and stay inactive until we carried out a further action. But in fact, when we added new ones they immediately took part in the reading and writing of data, despite not actually holding any data. The source of the misunderstanding was a single setting (or &#x27;flag&#x27;) that controls how a new server behaves.</p></div><div class="Text_text__CSJ_O"><p>In Cassandra, there&#x27;s a flag called <code>auto_bootstrap</code> which configures how servers start up and join an existing cluster. The flag controls whether data is automatically streamed from the existing Cassandra servers onto a new server which has joined the cluster. Crucially, it also controls the querying pattern to continue serving read requests to the older servers until the newer servers have streamed all the data.</p></div><div class="Block_block__umVpK Block_widthFull__Hgffj Block_transparent__bO8GO Block_textLeft__VQYuP Block_horizontalCenter__r3X72 Block_verticalMiddle__hz7OB Block_paddingHorizontalNone___78ZF Block_paddingVerticalNone__iiqDU Block_marginHorizontalNone__zWCSZ Block_marginVerticalMedium__bfxCr"><div class="Block_contentContainer__zHay8"><picture><source type="image/avif" srcSet="https://images.ctfassets.net/ro61k101ee59/2wzoTzjfnpfhpGsBAMZLyj/95e80f23d856cce44b21e3e4e2a6721c/Untitled__2_.png?w=2400&amp;q=75&amp;fm=avif"/><source type="image/webp" srcSet="https://images.ctfassets.net/ro61k101ee59/2wzoTzjfnpfhpGsBAMZLyj/95e80f23d856cce44b21e3e4e2a6721c/Untitled__2_.png?w=2400&amp;q=75&amp;fm=webp"/><img src="https://images.ctfassets.net/ro61k101ee59/2wzoTzjfnpfhpGsBAMZLyj/95e80f23d856cce44b21e3e4e2a6721c/Untitled__2_.png?w=2400&amp;q=75" alt="Diagram showing what we expected to happen, with data coming from the old, active nodes" width="1272" loading="lazy"/></picture></div></div><div class="HtmlSnippet_htmlSnippet__4_0bQ"><br><span>What we expected: new nodes join the cluster in an inactive mode, and get assigned a portion of the data. They remain in this state until we actively stream data into them, one-by-one.</span></div><div class="Text_text__CSJ_O"><p>In the majority of cases, it&#x27;s recommended to leave the default of <code>auto_bootstrap</code> to <code>true</code>. With the flag in this state, servers join the cluster in an &#x27;inactive&#x27; state, have a portion of the data assigned to them, and remain inactive in data reading until the data streaming process finishes.</p></div><div class="Text_text__CSJ_O"><p>But when our last scale up in October 2018 was complete, we&#x27;d set the <code>auto_bootstrap</code> flag to <code>false</code> for our production environment. We did this so that if we lost a server in our cluster (for example, due to hardware failure) and had to replace it, we&#x27;d restore the data from backups (which would be significantly faster and put less pressure on the rest of the cluster) rather than rebuild it from scratch using the other servers which had the data.</p></div><div class="Block_block__umVpK Block_widthFull__Hgffj Block_transparent__bO8GO Block_textLeft__VQYuP Block_horizontalCenter__r3X72 Block_verticalMiddle__hz7OB Block_paddingHorizontalNone___78ZF Block_paddingVerticalNone__iiqDU Block_marginHorizontalNone__zWCSZ Block_marginVerticalMedium__bfxCr"><div class="Block_contentContainer__zHay8"><picture><source type="image/avif" srcSet="https://images.ctfassets.net/ro61k101ee59/3JyHW5jzf8UdJOKlc5bgC1/8777b9b4586466b17a848734c89ed239/_inc-platform-issues_-_Google_Slides__2_.png?w=1932&amp;q=75&amp;fm=avif"/><source type="image/webp" srcSet="https://images.ctfassets.net/ro61k101ee59/3JyHW5jzf8UdJOKlc5bgC1/8777b9b4586466b17a848734c89ed239/_inc-platform-issues_-_Google_Slides__2_.png?w=1932&amp;q=75&amp;fm=webp"/><img src="https://images.ctfassets.net/ro61k101ee59/3JyHW5jzf8UdJOKlc5bgC1/8777b9b4586466b17a848734c89ed239/_inc-platform-issues_-_Google_Slides__2_.png?w=1932&amp;q=75" alt="Diagram showing us restoring data from a backup" width="966" loading="lazy"/></picture></div></div><div class="Text_text__CSJ_O"><p>During the scale-up activity, we had no intention to stream the data from backups. With <code>auto_bootstrap</code> set to false, we expected the six new servers would be added to cluster, agree on the partitions of data they were responsible for, and remain inactive until we initiated the rebuild/streaming process on each server, one-by-one.</p></div><div class="Text_text__CSJ_O"><p>But this wasn&#x27;t the case. It turns out that in addition to the data streaming behaviour, the flag also controls whether new servers join in an active or inactive state. Once the new servers had agreed on the partitions of data they were responsible for, they assumed full responsibility without having any of the underlying data, and began serving queries.</p></div><div class="Text_text__CSJ_O"><p>Because some of the data was being served from the new servers which didn&#x27;t have any data yet, that data appeared to be missing.</p></div><div class="Text_text__CSJ_O"><p>So when some customers opened the app, for example, transactions that should have existed couldn&#x27;t be found, which caused their account balances to appear incorrectly.</p></div><div class="Text_text__CSJ_O"><p>Once the issue had been resolved, we were able to fully recover the data and correct any issues.</p></div><h2 class="Title_title__ofmsr Title_primary__c1rix text-heading-3 Title_left__V4Q3q" id="to-stop-this-happening-again-were-making-some-changes">To stop this happening again, we&#x27;re making some changes</h2><div class="Text_text__CSJ_O"><p>There are a few things we can learn from this issue, and fix to makes sure it doesn&#x27;t happen again.</p></div><h3 class="Title_title__ofmsr Title_primary__c1rix text-heading-4 Title_left__V4Q3q" id="weve-identified-gaps-in-our-knowledge-of-operating-cassandra">We&#x27;ve identified gaps in our knowledge of operating Cassandra</h3><div class="Text_text__CSJ_O"><p>While we routinely perform operations like rolling restarts and server upgrades on Cassandra, some actions (like adding more servers) are less common.</p></div><div class="Text_text__CSJ_O"><p><strong>We&#x27;d tested the scale-up on our test environment, but not to the same extent as production.</strong></p></div><div class="Text_text__CSJ_O"><p>Instead of adding six servers, we tested with one.</p></div><div class="Text_text__CSJ_O"><p>To gain confidence in the production rollout, we brought a new server online and left it in the initial &#x27;no data&#x27; state for several hours. We did this across two clusters.</p></div><div class="Text_text__CSJ_O"><p>We were able to confirm that there was no impact on the rest of the cluster or any of the users of the environment. And at this point we were happy that the initial joining behaviour of <code>auto_bootstrap</code> was benign as we expected. So we continued to stream the data to the new server, monitored throughout, and confirmed there were no issues with data consistency or availability.</p></div><div class="Text_text__CSJ_O"><p>What we failed to account for was quorum (the three servers agreeing on a value). With only one new server, it wouldn&#x27;t matter if it joined the cluster fully and didn&#x27;t hold any data. In this case, we&#x27;d have agreement from the other two servers in the cluster.</p></div><div class="Text_text__CSJ_O"><p>But when we added six servers to production, the data ownership had two or three members reallocated to the new nodes, meaning we didn&#x27;t have the same guarantee because the underlying data didn&#x27;t reallocate.</p></div><h3 class="Title_title__ofmsr Title_primary__c1rix text-heading-4 Title_left__V4Q3q" id="weve-already-fixed-the-incorrect-setting">We&#x27;ve already fixed the incorrect setting</h3><div class="Text_text__CSJ_O"><p>We&#x27;ve already fixed our use of <code>auto_bootstrap</code>. And we&#x27;ve also reviewed and documented all our decisions around the other Cassandra settings. This means we have more extensive runbooks – the operational guides we use to provide step-by-step plans on performing operations such as a scale up or a restart of Cassandra. This&#x27;ll help fill the gaps in our knowledge, and make sure that knowledge is spread to all our engineers.</p></div><div class="Text_text__CSJ_O"><p>Another key issue that delayed our actions was the lack of metrics showing Cassandra as a primary cause of the issue. So we&#x27;re also looking at exposing more metrics and adding potential alerting for strong shifts in metrics like &#x27;row not found&#x27;.</p></div><h3 class="Title_title__ofmsr Title_primary__c1rix text-heading-4 Title_left__V4Q3q" id="well-split-our-single-cassandra-cluster-into-smaller-ones-to-reduce-the-impact-one-change-can-have">We&#x27;ll split our single Cassandra cluster into smaller ones to reduce the impact one change can have</h3><div class="Text_text__CSJ_O"><p>For a long time, we&#x27;ve run a single Cassandra cluster for all our services. Each service has its own dedicated area (known as a keyspace) within the cluster. But the data itself is spread across a shared set of underlying servers.</p></div><div class="Text_text__CSJ_O"><p>The single cluster approach has been advantageous for engineers building services – they don&#x27;t have to worry about which cluster to put a service on, and we only have to operationally manage and monitor one thing. But a downside of this design is that a single change can have a far-reaching impact, like we saw with this issue. We’d like to reduce the likelihood that any single activity can impact more than one area of Monzo.</p></div><div class="Text_text__CSJ_O"><p>With one cluster, it&#x27;s also much harder to pinpoint the source of failure. In this instance we took almost an hour from the first alert to the point where we pulled the information into a single coherent picture that highlighted Cassandra at fault. With smaller and more constrained system configurations, we believe this would have been a much less complex issue to deal with.</p></div><div class="Text_text__CSJ_O"><p>In the long term, we plan to split up our single large cluster into multiple smaller ones. This will drastically reduce the likelihood and impact of repeat issues like this one, and make it safer for us to operate at scale. We want to make sure we get it right though; doing it in such a way that doesn&#x27;t introduce too much operational complexity, or slow our engineers down at releasing new features to customers.</p></div><div class="Block_block__umVpK Block_widthFull__Hgffj Block_transparent__bO8GO Block_textLeft__VQYuP Block_horizontalCenter__r3X72 Block_verticalMiddle__hz7OB Block_paddingHorizontalNone___78ZF Block_paddingVerticalNone__iiqDU Block_marginHorizontalNone__zWCSZ Block_marginVerticalMedium__bfxCr"><div class="Block_contentContainer__zHay8"><picture><source type="image/avif" srcSet="https://images.ctfassets.net/ro61k101ee59/6mQyqjtoPHmpYw2ICpxfoF/c01ddf9d9874ebdba42e6232332c2682/Untitled__3_.png?w=2400&amp;q=75&amp;fm=avif"/><source type="image/webp" srcSet="https://images.ctfassets.net/ro61k101ee59/6mQyqjtoPHmpYw2ICpxfoF/c01ddf9d9874ebdba42e6232332c2682/Untitled__3_.png?w=2400&amp;q=75&amp;fm=webp"/><img src="https://images.ctfassets.net/ro61k101ee59/6mQyqjtoPHmpYw2ICpxfoF/c01ddf9d9874ebdba42e6232332c2682/Untitled__3_.png?w=2400&amp;q=75" alt="Diagram showing one large cluster being split into six separate ones" width="1476" loading="lazy"/></picture></div></div><hr/><div class="Text_text__CSJ_O"><p>We’re really sorry this happened, and we’re committed to fixing it for the future. Let us know if you found this debrief useful, and share any other questions or feedback with us too.</p></div><div class="Text_text__CSJ_O"><p></p></div><div class="___dynamic__authorsWrapper__ZVy68"><aside class="Author_Author__B0UIJ"><picture><source type="image/avif" srcSet="https://images.ctfassets.net/ro61k101ee59/19f3U8X1JmEg8ia7q2Oc2U/60d29b0bf849f73e4911612c296a12fb/chrisevans.png?w=300&amp;q=75&amp;fm=avif"/><source type="image/webp" srcSet="https://images.ctfassets.net/ro61k101ee59/19f3U8X1JmEg8ia7q2Oc2U/60d29b0bf849f73e4911612c296a12fb/chrisevans.png?w=300&amp;q=75&amp;fm=webp"/><img src="https://images.ctfassets.net/ro61k101ee59/19f3U8X1JmEg8ia7q2Oc2U/60d29b0bf849f73e4911612c296a12fb/chrisevans.png?w=300&amp;q=75" alt="chrisevans" width="150" loading="lazy"/></picture><div><h2 class="Title_title__ofmsr Title_primary__c1rix text-heading-4 Title_left__V4Q3q marginBottom" id="chris-evans">Chris Evans</h2><div class="Text_text__CSJ_O Text_marginBottom___UK4L"><p>Platform Team Lead</p></div><div class="Text_text__CSJ_O"><p><a class="Button_button__ceqVx Button_link__8caFw Button_inline__TsyTr Button_padWithSpaces__PFrni Button_center__nHk65" data-monzoanalytics-no-tracking="true" target="_self" href="/blog/author/chris-evans" rel="noopener noreferrer external"><span class="Button_text__5HT7_">Read more from Chris</span></a></p></div></div></aside><aside class="Author_Author__B0UIJ"><picture><source type="image/avif" srcSet="https://images.ctfassets.net/ro61k101ee59/7mFHSb5LYf1TsAyi4896aW/9e6a39871a70b63cf04b3af0da9a2068/E018CAQD4KB-W019A24DHUH-d5aa99cfefb8-512.png?w=300&amp;q=75&amp;fm=avif"/><source type="image/webp" srcSet="https://images.ctfassets.net/ro61k101ee59/7mFHSb5LYf1TsAyi4896aW/9e6a39871a70b63cf04b3af0da9a2068/E018CAQD4KB-W019A24DHUH-d5aa99cfefb8-512.png?w=300&amp;q=75&amp;fm=webp"/><img src="https://images.ctfassets.net/ro61k101ee59/7mFHSb5LYf1TsAyi4896aW/9e6a39871a70b63cf04b3af0da9a2068/E018CAQD4KB-W019A24DHUH-d5aa99cfefb8-512.png?w=300&amp;q=75" alt="Profile picture for Suhail Patel, a Principal Engineer at Monzo" width="150" loading="lazy"/></picture><div><h2 class="Title_title__ofmsr Title_primary__c1rix text-heading-4 Title_left__V4Q3q marginBottom" id="suhail-patel">Suhail Patel</h2><div class="Text_text__CSJ_O Text_marginBottom___UK4L"><p>Principal Engineer</p></div><div class="Text_text__CSJ_O"><p><a class="Button_button__ceqVx Button_link__8caFw Button_inline__TsyTr Button_padWithSpaces__PFrni Button_center__nHk65" data-monzoanalytics-no-tracking="true" target="_self" href="/blog/author/suhail-patel" rel="noopener noreferrer external"><span class="Button_text__5HT7_">Read more from Suhail</span></a></p></div></div></aside></div></article><aside class="SocialWidgets_SocialWidgets__g6Zf0 SocialWidgets_floating__D4FWX"><a class="Button_button__ceqVx Button_link__8caFw Button_center__nHk65 Button_hasIcon__bBm7S SocialWidgets_socialButton__F8TWm" data-monzoanalytics-no-tracking="true" target="_blank" href="http://www.facebook.com/sharer/sharer.php?lang=en&amp;u=https://monzo.com/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th" rel="noopener noreferrer external" aria-label="Share the article on Facebook"><span aria-hidden="true"><span class="Button_iconWrapper__A1sER"><img class="undefined Icon_icon__qTI5m Icon_forceLightMode__FW6x7 Icon_large__yyrlR Icon_image__YFizv" src="/images/social-logos/dark/facebook.svg" aria-hidden="true" alt="" loading="lazy"/></span></span></a><a class="Button_button__ceqVx Button_link__8caFw Button_center__nHk65 Button_hasIcon__bBm7S SocialWidgets_socialButton__F8TWm" data-monzoanalytics-no-tracking="true" target="_blank" href="mailto:?&amp;subject=Check%20out%20this%20blog%20post:https://monzo.com/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th&amp;body=https://monzo.com/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th" rel="noopener noreferrer external" aria-label="Share the article via email"><span aria-hidden="true"><span class="Button_iconWrapper__A1sER"><img class="undefined Icon_icon__qTI5m Icon_large__yyrlR" src="/images/icons/dark/email.svg" aria-hidden="true" alt="" loading="lazy"/></span></span></a><a class="Button_button__ceqVx Button_link__8caFw Button_center__nHk65 Button_hasIcon__bBm7S SocialWidgets_socialButton__F8TWm" data-monzoanalytics-no-tracking="true" target="_blank" href="https://www.linkedin.com/shareArticle?mini=true&amp;url=https://monzo.com/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th&amp;source=Monzo" rel="noopener noreferrer external" aria-label="Share the article on LinkedIn"><span aria-hidden="true"><span class="Button_iconWrapper__A1sER"><img class="undefined Icon_icon__qTI5m Icon_forceLightMode__FW6x7 Icon_large__yyrlR Icon_image__YFizv" src="/images/social-logos/dark/linkedin.svg" aria-hidden="true" alt="" loading="lazy"/></span></span></a></aside></div></div></div></main><section class="BasicSectionContainer_basicSectionContainer__c9eBG BasicSectionContainer_bgColor__RX0NM BasicSectionContainer_noBottomPadding__aY9CG BasicSectionContainer_fullWidthOnMobile__2O2mj"><div class="BasicSectionContainer_basicSectionContainerContent__kFgj_ BasicSectionContainer_fullWidthOnMobile__2O2mj"><footer class="Footer_footer__BdQyf"><span class="VisuallyHidden_root__K5ziU"><h2>Site information and links</h2></span><div class="Footer_navLinksContainer__OcoF_"><div class="FooterNavLinkGroup_footerNavLinkGroup__c_6Nj"><h3 class="FooterNavLinkGroup_title__JvBYI">Products</h3><nav aria-label="products navigation"><ul><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/current-account"><span class="Button_text__5HT7_">Current accounts</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/business-banking"><span class="Button_text__5HT7_">Business accounts</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/savings-isas/instant-access"><span class="Button_text__5HT7_">Savings</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/flex"><span class="Button_text__5HT7_">Credit cards</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/loans"><span class="Button_text__5HT7_">Loans</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/investments"><span class="Button_text__5HT7_">Investments</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/pensions"><span class="Button_text__5HT7_">Pensions</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/home-insurance"><span class="Button_text__5HT7_">Home Insurance</span></a></li></ul></nav></div><div class="FooterNavLinkGroup_footerNavLinkGroup__c_6Nj"><h3 class="FooterNavLinkGroup_title__JvBYI">Company</h3><nav aria-label="company navigation"><ul><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/careers"><span class="Button_text__5HT7_">Careers</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/press"><span class="Button_text__5HT7_">Press</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/blog"><span class="Button_text__5HT7_">Blog</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/book-of-money"><span class="Button_text__5HT7_">The Book of Money</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/investor-information"><span class="Button_text__5HT7_">Investor information</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/helping-everyone-belong-at-monzo"><span class="Button_text__5HT7_">Helping everyone belong</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/modern-slavery-statements"><span class="Button_text__5HT7_">Modern slavery statement</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/protecting-the-environment"><span class="Button_text__5HT7_">Sustainability</span></a></li></ul></nav></div><div class="FooterNavLinkGroup_footerNavLinkGroup__c_6Nj"><h3 class="FooterNavLinkGroup_title__JvBYI">Using Monzo</h3><nav aria-label="using monzo navigation"><ul><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" href="https://web.monzo.com" rel="noopener noreferrer external"><span class="Button_text__5HT7_">Web app login</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/accessibility"><span class="Button_text__5HT7_">Accessibility</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/supporting-customers"><span class="Button_text__5HT7_">Additional support</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/supporting-customers/life-events"><span class="Button_text__5HT7_">Life events</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" href="/legal/terms-and-conditions" rel="noopener noreferrer external"><span class="Button_text__5HT7_">Terms and Conditions</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/information-about-current-account-services"><span class="Button_text__5HT7_">Information about our current account services</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/learn/money-tomorrow"><span class="Button_text__5HT7_">Savings hub</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/loans/personal-loan-calculator"><span class="Button_text__5HT7_">Personal loan calculator</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/currency-converter"><span class="Button_text__5HT7_">Currency Converter</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/features/1p-saving-challenge"><span class="Button_text__5HT7_">1p Savings Challenge</span></a></li></ul></nav></div><div class="FooterNavLinkGroup_footerNavLinkGroup__c_6Nj"><h3 class="FooterNavLinkGroup_title__JvBYI">Help and security</h3><nav aria-label="help and security navigation"><ul><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/help"><span class="Button_text__5HT7_">Help centre</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/faq"><span class="Button_text__5HT7_">FAQs</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/fraud"><span class="Button_text__5HT7_">Fraud protection</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/security"><span class="Button_text__5HT7_">Security at Monzo</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/money-worries"><span class="Button_text__5HT7_">Money worries</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" href="/legal/fscs-information" rel="noopener noreferrer external"><span class="Button_text__5HT7_">FSCS information</span></a></li></ul></nav></div><div class="FooterNavLinkGroup_footerNavLinkGroup__c_6Nj"><h3 class="FooterNavLinkGroup_title__JvBYI">Site and app information</h3><nav aria-label="site and app information navigation"><ul><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" href="/legal/privacy-notice" rel="noopener noreferrer external"><span class="Button_text__5HT7_">Privacy notice</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" href="/legal/cookie-notice" rel="noopener noreferrer external"><span class="Button_text__5HT7_">Cookie notice</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" href="/legal/browser-support-policy" rel="noopener noreferrer external"><span class="Button_text__5HT7_">Browser support policy</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" href="/legal/mobile-operating-system-support-policy" rel="noopener noreferrer external"><span class="Button_text__5HT7_">Mobile operating system support policy</span></a></li><li><a class="Button_button__ceqVx Button_forceDarkMode__35W_z Button_link__8caFw Button_left__HTDVZ FooterNavLinkGroup_linkBtn__VII8V" data-monzoanalytics-no-tracking="true" target="_self" rel="" href="/service-information"><span class="Button_text__5HT7_">App performance</span></a></li></ul></nav></div></div><div class="Footer_localeContainer__T95ei"><nav aria-label="Choose a country/region. The current selection is United Kingdom" id="locale-button"><button aria-expanded="false" class="LocaleButton_button__gGHeR LocaleButton_darkButton__ermxp" data-monzoanalytics-no-tracking="true" type="button"><span class="LocaleButton_localeButton__Bnn7V"><span class="LocaleButton_localeButton__flag__3UTpO">🇬🇧</span><span>United Kingdom<!-- --> | <!-- -->English</span></span></button></nav></div><div class="Footer_logoContainer__8vGDY"><a data-monzoanalytics-action-id="link_clicked" data-monzoanalytics-action-parameters="link_location=footer&amp;link_text=Monzo Bank&amp;link_type=navigation&amp;url=/&amp;currentUrl=/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th" href="/"><svg class="Footer_logo__o21gC" width="1452" height="253" viewBox="0 0 1452 253" fill="none" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Monzo Bank Logo"><path d="M0.832448 246.432V6.60055H65.7161V38.6625C80.6045 14.0273 102.478 2.07202 131.887 2.07202C161.296 2.07202 183.536 14.5708 199.344 40.474C224.709 14.2085 244.192 2.07202 274.52 2.07202C329.295 2.07202 360.174 32.5037 360.174 88.2952V246.432H290.328V116.553C290.328 83.0421 283.159 67.8263 256.323 67.8263C229.488 67.8263 214.6 84.3101 214.6 116.553V246.432H144.385V116.553C144.385 83.0421 137.217 67.8263 110.381 67.8263C83.5455 67.8263 68.6571 84.3101 68.6571 116.553V246.432H0.648743H0.832448Z" fill="#FF4F40"></path><path d="M442.896 37.9345C467.342 13.8427 499.508 0.438232 532.593 0.438232C567.884 0.438232 598.212 12.5747 622.842 35.2173C648.759 59.3091 662.728 92.458 662.728 124.882C662.728 161.11 650.413 190.999 625.967 215.091C600.969 239.726 570.273 252.587 533.512 252.587C496.751 252.587 466.423 240.088 441.609 214.185C418.082 190.093 405.767 159.299 405.767 125.788C405.767 92.2768 418.817 61.4828 442.896 37.7533V37.9345ZM533.88 185.746C565.678 185.746 591.411 159.48 591.411 126.875C591.411 94.2694 565.494 67.4605 533.88 67.4605C502.265 67.4605 476.348 93.7259 476.348 126.875C476.348 160.024 502.633 185.746 533.88 185.746Z" fill="#FF4F40"></path><path d="M708.122 246.43V6.59884H776.131L775.212 38.6608C790.1 14.569 812.892 2.07031 845.058 2.07031C895.421 2.07031 927.955 33.4077 927.955 88.2935V246.43H856.454V116.552C856.454 83.0404 849.286 67.8246 821.531 67.8246C793.776 67.8246 778.52 84.3084 778.52 116.552V246.43H708.306H708.122Z" fill="#FF4F40"></path><path d="M1231.6 37.9345C1256.05 13.8427 1288.22 0.438232 1321.3 0.438232C1356.59 0.438232 1386.92 12.5747 1411.55 35.2173C1437.47 59.3091 1451.44 92.458 1451.44 124.882C1451.44 161.11 1439.12 190.999 1414.67 215.091C1389.68 239.726 1358.98 252.587 1322.22 252.587C1285.46 252.587 1255.13 240.088 1230.32 214.185C1206.79 190.093 1194.47 159.299 1194.47 125.788C1194.47 92.2768 1207.52 61.4828 1231.6 37.7533V37.9345ZM1322.59 185.746C1354.39 185.746 1380.12 159.48 1380.12 126.875C1380.12 94.2694 1354.2 67.4605 1322.59 67.4605C1290.97 67.4605 1265.06 93.7259 1265.06 126.875C1265.06 160.024 1291.34 185.746 1322.59 185.746Z" fill="#FF4F40"></path><path d="M979.983 246.43V196.435L1080.16 68.7308H979.983V6.59937H1160.85V63.2966L1072.44 184.299H1162.69V246.43H980.167H979.983Z" fill="#FF4F40"></path><title>Monzo Logo</title></svg></a></div><div class="Footer_legalTextContainer__U0YPg"><div class="Text_text__CSJ_O Text_forceDarkMode__G2s7d Text_marginBottom___UK4L Footer_legalText__ib6uK"><p><br/><small>Monzo Bank Limited is a company registered in England and Wales (No.09446231). Monzo Bank Limited is authorised by the Prudential Regulation Authority and regulated by the Financial Conduct Authority and the Prudential Regulation Authority. Our financial Services Register number is 730427. Our address is Broadwalk House, 5 Appold St, London EC2A 2AG.</small></p></div></div><div class="Footer_socialsContainer__MOmX8"><a class="Button_button__ceqVx Button_link__8caFw Button_center__nHk65 Button_hasIcon__bBm7S" data-monzoanalytics-no-tracking="true" target="_blank" href="https://www.instagram.com/monzo" rel="noopener noreferrer external" aria-label="Instagram"><span aria-hidden="true"><span class="Button_iconWrapper__A1sER"><img class="undefined Icon_icon__qTI5m Icon_transparent__zbDVa Icon_xlarge__Mbxvh Icon_image__YFizv" src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/media/instagram.1bbdc4ed.svg" aria-hidden="true" alt="" loading="lazy"/></span></span></a><a class="Button_button__ceqVx Button_link__8caFw Button_center__nHk65 Button_hasIcon__bBm7S" data-monzoanalytics-no-tracking="true" target="_blank" href="https://www.facebook.com/monzobank" rel="noopener noreferrer external" aria-label="Facebook"><span aria-hidden="true"><span class="Button_iconWrapper__A1sER"><img class="undefined Icon_icon__qTI5m Icon_transparent__zbDVa Icon_xlarge__Mbxvh Icon_image__YFizv" src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/media/facebook.94997288.svg" aria-hidden="true" alt="" loading="lazy"/></span></span></a><a class="Button_button__ceqVx Button_link__8caFw Button_center__nHk65 Button_hasIcon__bBm7S" data-monzoanalytics-no-tracking="true" target="_blank" href="https://www.linkedin.com/company/monzo-bank" rel="noopener noreferrer external" aria-label="Linkedin"><span aria-hidden="true"><span class="Button_iconWrapper__A1sER"><img class="undefined Icon_icon__qTI5m Icon_transparent__zbDVa Icon_xlarge__Mbxvh Icon_image__YFizv" src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/media/linkedin.9fc87684.svg" aria-hidden="true" alt="" loading="lazy"/></span></span></a><a class="Button_button__ceqVx Button_link__8caFw Button_center__nHk65 Button_hasIcon__bBm7S" data-monzoanalytics-no-tracking="true" target="_blank" href="https://www.youtube.com/monzobank" rel="noopener noreferrer external" aria-label="Youtube"><span aria-hidden="true"><span class="Button_iconWrapper__A1sER"><img class="undefined Icon_icon__qTI5m Icon_transparent__zbDVa Icon_xlarge__Mbxvh Icon_image__YFizv" src="https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736/_next/static/media/youtube.8039ba10.svg" aria-hidden="true" alt="" loading="lazy"/></span></span></a></div><div class="Footer_appStoresContainer__sm4mV"><a data-monzoanalytics-no-tracking="true" class="AppStoreButton_appStoreButton__xXkuw AppStoreButton_medium__JobEX" href="https://apps.apple.com/app/monzo-mobile-banking/id1052238659"><img alt="Download on the App Store" loading="lazy" src="https://images.ctfassets.net/ro61k101ee59/44xU3iWkCju0mgyNK5LSY6/c85239d299e9a9533ecbe144c4d83741/app-store-v2.svg"/></a><a data-monzoanalytics-no-tracking="true" class="AppStoreButton_appStoreButton__xXkuw AppStoreButton_medium__JobEX" href="https://play.google.com/store/apps/details/Monzo_Bank_Mobile_Banking?id=co.uk.getmondo"><img alt="Get it on Google Play" loading="lazy" src="https://images.ctfassets.net/ro61k101ee59/1dUNY6U6unZBTZ6GjU0kHd/28f5e9cbcf9729074c0f8f36d97845c8/google-play-v2.svg"/></a></div></footer></div></section><div class="monzo-com-design-system" data-nosnippet="true" data-testid="cookie-controls"><dialog class="Dialog_Dialog__tJ9Sz Dialog_Dialog--hasBackdrop__dLZB4 Dialog_Dialog--large__pb9NO Dialog_Dialog--positionBottom___GQwj" aria-labelledby="cookie-banner-title"><div class="Dialog_Dialog__content__OF8Nm Dialog_Dialog__focusTarget__f5_BC" tabindex="0"><div class="CookieBanner_CookieBanner__Content__6bcno"><h2 id="cookie-banner-title" class="CookieBanner_CookieBanner__Title__KAthS">Can we use optional cookies?</h2><p style="color:var(--semantic-content-secondary)">We’re not talking about the crunchy, tasty kind. These cookies help us keep our website safe, give you a better experience and show more relevant ads. You can learn more about <a href="/legal/cookie-notice" target="_blank" rel="noopener noreferrer">our cookie policy</a>.</p><div class="CookieBanner_CookieBanner__Controls__MCAJj"><button aria-disabled="false" class="Button_Button__7VWsG Button_Button--primary__wwzbg Button_Button--medium__hxBko Button Button--primary Button--medium" type="button"><b class="Button_Button__content__mwBf1" aria-hidden="false">Accept all</b></button><button aria-disabled="false" class="Button_Button__7VWsG Button_Button--primary__wwzbg Button_Button--medium__hxBko Button Button--primary Button--medium" type="button"><b class="Button_Button__content__mwBf1" aria-hidden="false">Reject all</b></button><button aria-disabled="false" class="Button_Button__7VWsG Button_Button--secondary__tL6g5 Button_Button--medium__hxBko Button Button--secondary Button--medium" type="button"><b class="Button_Button__content__mwBf1" aria-hidden="false">Customise</b></button></div></div></div></dialog><dialog class="Dialog_Dialog__tJ9Sz Dialog_Dialog--hasBackdrop__dLZB4 Dialog_Dialog--medium__Rx4YW Dialog_Dialog--positionCenter__oMKwC" data-nosnippet="true" aria-labelledby="cookie-dialog-title"><header class="Dialog_Dialog__headerRow__xytC0"><div class="Dialog_Dialog__headerCol__3o6f2 Dialog_Dialog__focusTarget__f5_BC"></div><div class="Dialog_Dialog__btnCol__y55QD"><button aria-label="Close" aria-busy="false" aria-disabled="false" class="IconButton_IconButton__2Fva_ IconButton_IconButton--default__Svw4m IconButton_IconButton--small__OvgbK" type="button"><span class="IconButton_IconButton__content__5JrNv" aria-hidden="false"><svg class="BaseIcon_BaseIcon__Ses7V" width="20" height="20" viewBox="0 0 24 24" fill="none" role="graphics-symbol" aria-hidden="true"><path d="M12 13.4142L7.46446 17.9498C7.26411 18.1501 7.02841 18.2503 6.75735 18.2503C6.4863 18.2503 6.25059 18.1501 6.05025 17.9498C5.8499 17.7494 5.74973 17.5137 5.74973 17.2427C5.74973 16.9716 5.8499 16.7359 6.05025 16.5356L10.5858 12L6.05025 7.46449C5.8499 7.26414 5.74973 7.02844 5.74973 6.75738C5.74973 6.48633 5.8499 6.25062 6.05025 6.05028C6.25059 5.84993 6.4863 5.74976 6.75735 5.74976C7.02841 5.74976 7.26411 5.84993 7.46446 6.05028L12 10.5858L16.5355 6.05028C16.7359 5.84993 16.9716 5.74976 17.2426 5.74976C17.5137 5.74976 17.7494 5.84993 17.9497 6.05028C18.1501 6.25062 18.2503 6.48633 18.2503 6.75738C18.2503 7.02844 18.1501 7.26414 17.9497 7.46449L13.4142 12L17.9497 16.5356C18.1501 16.7359 18.2503 16.9716 18.2503 17.2427C18.2503 17.5137 18.1501 17.7494 17.9497 17.9498C17.7494 18.1501 17.5137 18.2503 17.2426 18.2503C16.9716 18.2503 16.7359 18.1501 16.5355 17.9498L12 13.4142Z" fill="currentColor"></path></svg></span></button></div></header><div class="Dialog_Dialog__content__OF8Nm Dialog_Dialog__focusTarget__f5_BC" tabindex="0"><div class="CookieDialog_CookieDialog__72vSN"><div class="CookieDialog_CookieDialog__CopyContent__DbqpO"><h2 id="cookie-dialog-title" class="text-heading-5">Adjust your cookie preferences</h2><p>We use 4 types of cookie. You can choose which cookies you’re happy for us to use. For more detail, and a list of the cookies we use, see the <a href="/legal/cookie-notice" target="_blank" rel="noopener noreferrer">Monzo cookie policy</a>.</p></div></div></div></dialog></div></div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{"preview":false,"head":{"title":"We had issues with Monzo on 29th July. Here's what happened, and what we did to fix it.","locale":"en-GB","rootUrl":"https://monzo.com","slug":"/blog/2019/09/08/why-monzo-wasnt-working-on-july-29th","description":"Something went wrong doing an systems upgrade, affecting all Monzo services. To fix it, we're changing how we do upgrades and store data.","ogImage":"//images.ctfassets.net/ro61k101ee59/5kmerWyI44h2UllyM7eEtO/d67ffde652b3381dcf36aead6775dee5/29-July-OG.png"},"pageTheme":"default","sections":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"On the 29th July from about 13:10 onwards, you might have had some issues with Monzo. As we shared in "},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"an update"}],"data":{"uri":"https://monzo.com/blog/2019/07/30/we-had-issues-with-monzo-yesterday"},"nodeType":"hyperlink"},{"data":{},"marks":[],"nodeType":"text","value":" at the time, you might not have been able to:"}],"data":{},"nodeType":"paragraph"},{"content":[{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Log into the app"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Send and receive payments, or withdraw money from ATMs"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"See accurate balances and transactions in your app"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Get in touch with us through the in-app chat or by phone"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"}],"data":{},"nodeType":"unordered-list"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"This happened because we were making a change to our database, that didn't go to plan."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We know that when it comes to your money, problems of any kind are totally unacceptable. We're really sorry about this, and we're committed to making sure it doesn't happen again."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We fixed the majority of issues by the end of that day. And since then, we've been investigating exactly what happened and working on plans to make sure it doesn't happen again."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"In the spirit of transparency, we'd like to share exactly what went wrong from a technical perspective, and how we're working to avoid it in the future."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Some background"}],"data":{},"nodeType":"heading-2"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We use Cassandra to store our data, and have multiple copies of everything"}],"data":{},"nodeType":"heading-3"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We use a database called "},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Cassandra"}],"data":{"uri":"https://en.wikipedia.org/wiki/Apache_Cassandra"},"nodeType":"hyperlink"},{"data":{},"marks":[],"nodeType":"text","value":" to store our data. Cassandra is an open-source, highly-available, distributed data store. We use Cassandra to spread the data across multiple servers, while still serving it as one logical unit to our services."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We run a collection of 21 servers (which we call a cluster). And all the data we store is replicated across three out of the 21 servers. This means if something goes wrong with one server or we need to make a planned change, the data is entirely safe and still available from the other two."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Cassandra uses an element called the "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"partition key"},{"data":{},"marks":[],"nodeType":"text","value":" to decide which three servers in the cluster of 21 are responsible for a particular piece of data."}],"data":{},"nodeType":"paragraph"},{"content":[],"data":{"target":{"fields":{"description":"A diagram showing a piece of data stored across three servers","file":{"contentType":"image/png","details":{"image":{"height":630,"width":1532},"size":81661},"fileName":"_inc-platform-issues_-_Google_Slides.png","url":"//images.ctfassets.net/ro61k101ee59/0K9zDvgmPxo7vd7RJS3xb/a8c0d642a744a48f610057484f828ea7/_inc-platform-issues_-_Google_Slides.png"},"title":"How we store data"},"metadata":{"concepts":[],"tags":[]},"sys":{"createdAt":"2019-08-08T14:29:28.880Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"0K9zDvgmPxo7vd7RJS3xb","locale":"en","publishedVersion":59,"revision":1,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Asset","updatedAt":"2019-08-08T14:29:28.880Z"}}},"nodeType":"embedded-asset-block"},{"content":[],"data":{"target":{"fields":{"content":"\u003cbr\u003e\u003cspan\u003eHere we have a piece of data represented by the pink square which is set to the value T\u003c/span\u003e","name":"caption: Here we have a piece of data represented by the pink square which is set to the value T"},"metadata":{"concepts":[],"tags":[]},"sys":{"contentType":{"sys":{"id":"htmlSnippet","linkType":"ContentType","type":"Link"}},"createdAt":"2019-08-09T09:04:01.151Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"5fop95Y54cjJ2044mFCAo5","locale":"en","publishedVersion":30,"revision":2,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Entry","updatedAt":"2019-08-09T09:18:39.157Z"}}},"nodeType":"embedded-entry-block"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"When we want to read data, we can go to any of the servers in the cluster and ask for a piece of data for a specific partition key. All reads and writes from our services happen with quorum. This means at least two out of three servers need to acknowledge the value before data is returned from or written to Cassandra."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"The entire cluster knows how to translate the partition key to the same three servers that actually hold the data."}],"data":{},"nodeType":"paragraph"},{"content":[],"data":{"target":{"fields":{"description":"Diagram showing us reading the data from three servers","file":{"contentType":"image/png","details":{"image":{"height":522,"width":1404},"size":89884},"fileName":"Untitled.png","url":"//images.ctfassets.net/ro61k101ee59/1HvwaK1B4xCuCrABd3AIrK/2eff99b007d306bb62f478909cbdc279/Untitled.png"},"title":"How we read data"},"metadata":{"concepts":[],"tags":[]},"sys":{"createdAt":"2019-08-08T14:30:56.209Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"1HvwaK1B4xCuCrABd3AIrK","locale":"en","publishedVersion":38,"revision":1,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Asset","updatedAt":"2019-08-08T14:30:56.209Z"}}},"nodeType":"embedded-asset-block"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We were scaling up Cassandra to keep apps and card payments working smoothly"}],"data":{},"nodeType":"heading-2"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"As more and more people start using Monzo, we have to scale up Cassandra so it can store all the data and serve it quickly and smoothly. We last scaled up Cassandra in October 2018 and projected that our current capacity would tide us over for about a year."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"But during this time, lots more people started using Monzo, and we increased the number of microservices we run to support all the new features in the Monzo app."}],"data":{},"nodeType":"paragraph"},{"content":[],"data":{"target":{"fields":{"description":"A graph showing the microservices we use going up over time","file":{"contentType":"image/png","details":{"image":{"height":836,"width":1608},"size":83573},"fileName":"Using_Envoy_as_a_Service_Proxy__Devops_Exchange_London__-_Google_Slides.png","url":"//images.ctfassets.net/ro61k101ee59/61pdYUleMaupifO14nlvXG/4a705c1ea61e66de89162437324611d2/Using_Envoy_as_a_Service_Proxy__Devops_Exchange_London__-_Google_Slides.png"},"title":"The microservices running Monzo, over time"},"metadata":{"concepts":[],"tags":[]},"sys":{"createdAt":"2019-08-08T15:59:00.600Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"61pdYUleMaupifO14nlvXG","locale":"en","publishedVersion":59,"revision":1,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Asset","updatedAt":"2019-08-08T15:59:00.600Z"}}},"nodeType":"embedded-asset-block"},{"content":[],"data":{"target":{"fields":{"content":"\u003cbr\u003e\u003cspan\u003eWe run a microservice architecture, and the number of services we run is growing as we offer more features.\u003c/span\u003e","name":"caption: We run a microservice architecture, and the number of services we run is growing as we offer more features."},"metadata":{"concepts":[],"tags":[]},"sys":{"contentType":{"sys":{"id":"htmlSnippet","linkType":"ContentType","type":"Link"}},"createdAt":"2019-08-09T09:04:36.406Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"6QGOvcnbdCpfeMLK1RKPT8","locale":"en","publishedVersion":28,"revision":2,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Entry","updatedAt":"2019-08-09T09:18:48.011Z"}}},"nodeType":"embedded-entry-block"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"As a result, during peak load, our Cassandra cluster was running closer to its limits than we'd like. And even though this wasn't affecting our customers, we knew if we didn't address it soon we'd start seeing an increase in the time it'd take to serve requests."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"For some of our services (especially those we use to serve real time payments), taking longer to serve requests would mean we were slowing down the apps and card payments. And nobody wants to wait for a long time when they're at the front of the queue to pay for their shopping!"}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"So we planned to increase the size of the cluster, to add more compute capacity and spread the load across more servers."}],"data":{},"nodeType":"paragraph"},{"content":[],"data":{"target":{"fields":{"description":"A diagram showing a before and after comparison of adding extra servers","file":{"contentType":"image/png","details":{"image":{"height":870,"width":1984},"size":142771},"fileName":"_inc-platform-issues_-_Google_Slides (1).png","url":"//images.ctfassets.net/ro61k101ee59/6HMPWU13eTzCXiTSJ19Cdg/392cf825e5b5443e5d5df52ea499e557/_inc-platform-issues_-_Google_Slides__1_.png"},"title":"Adding more servers helps to spread the load"},"metadata":{"concepts":[],"tags":[]},"sys":{"createdAt":"2019-08-08T16:00:06.541Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"6HMPWU13eTzCXiTSJ19Cdg","locale":"en","publishedVersion":51,"revision":1,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Asset","updatedAt":"2019-08-08T16:00:06.541Z"}}},"nodeType":"embedded-asset-block"},{"content":[],"data":{"target":{"fields":{"content":"\u003cbr\u003e\u003cspan\u003eAdding more servers means we can spread the data more evenly and support a larger amount of queries in the future.\u003c/span\u003e","name":"caption: Adding more servers means we can spread the data more evenly and support a larger amount of queries in the future."},"metadata":{"concepts":[],"tags":[]},"sys":{"contentType":{"sys":{"id":"htmlSnippet","linkType":"ContentType","type":"Link"}},"createdAt":"2019-08-09T09:04:58.212Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"1sbeuHwNYgsaLNDSJIPfZQ","locale":"en","publishedVersion":25,"revision":2,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Entry","updatedAt":"2019-08-09T09:18:56.915Z"}}},"nodeType":"embedded-entry-block"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"What happened on 29th July 2019"}],"data":{},"nodeType":"heading-2"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"This is the timeline of events that happened on the day. All times are in British Summer Time (BST), on the 29th of July 2019."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:10"},{"data":{},"marks":[],"nodeType":"text","value":" We start scaling Cassandra by adding six new servers to the cluster. We have a flag set which we believe means the new servers will start up and join the cluster, but otherwise remain inactive until we stream data to them."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We confirm there's been no impact using the metrics from both the database and the services that depend on it (i.e. server and client side metrics). To do this, we look for any increase in errors, changes in latency, or any deviations in read and write rates. All of these metrics appear normal and unaffected by the operation."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:14"},{"data":{},"marks":[],"nodeType":"text","value":" Our automated alerts detect an issue with Mastercard, indicating "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"a small percentage of card transactions are failing"},{"data":{},"marks":[],"nodeType":"text","value":". We tell our payments team about the issue."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:14"},{"data":{},"marks":[],"nodeType":"text","value":" We receive reports from Customer Operations (COps) that the tool they use to communicate with our customers isn't working as expected. This meant "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"we weren't able to help customers through in app chat,"},{"data":{},"marks":[],"nodeType":"text","value":" leaving customers who'd got in touch with us waiting."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:15"},{"data":{},"marks":[],"nodeType":"text","value":" We declare an incident, and our daytime "},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"on-call"}],"data":{"uri":"https://monzo.com/blog/2018/09/20/on-call"},"nodeType":"hyperlink"},{"data":{},"marks":[],"nodeType":"text","value":" engineer assembles a small group of engineers to investigate."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:24"},{"data":{},"marks":[],"nodeType":"text","value":" The engineer who initiated the change to the database notices the incident and joins the investigation. We discuss whether the scale-up activity could have caused the issue, but discount the possibility as everything appears healthy. There's no increase in errors, and the read and write rates look like they haven't changed."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:24"},{"data":{},"marks":[],"nodeType":"text","value":" Our payments team identify a small code error in one of our Mastercard services, where a specific execution path wasn't gracefully handling an error case. We believe this is the cause of the Mastercard issue, so get to work on a fix."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:29"},{"data":{},"marks":[],"nodeType":"text","value":" We notice that our internal edge is returning HTTP 404 responses."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Our internal edge is a service we've written and use to access internal services (like our customer operations tooling and our deployment pipeline). It does checks to make sure that we only give access to Monzo employees, and forwards requests to the relevant place."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"This means our internal edge couldn't find the destination it was looking for."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:32"},{"data":{},"marks":[],"nodeType":"text","value":" We receive reports from COps that "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"some customers are being logged out of both the Android and iOS apps."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:33"},{"data":{},"marks":[],"nodeType":"text","value":" "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"We update our public "},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"status page"}],"data":{"uri":"https://status.monzo.com"},"nodeType":"hyperlink"},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":" to let our customers know about the issue."},{"data":{},"marks":[],"nodeType":"text","value":" This also shows up as a banner in our apps."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"italic"}],"nodeType":"text","value":"\"We're working to fix a problem that is causing some card transactions to fail, or the Monzo app to display incomplete or old information. If affected, you may also be unable to login or receive bank transfers.\""}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:33"},{"data":{},"marks":[],"nodeType":"text","value":" The Mastercard fix is ready to deploy, but we notice our deployment tooling is also failing."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:39"},{"data":{},"marks":[],"nodeType":"text","value":" We deploy the Mastercard fix using a planned fallback mechanism. And "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"we see an immediate improvement in card transactions succeeding"},{"data":{},"marks":[],"nodeType":"text","value":"."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:46"},{"data":{},"marks":[],"nodeType":"text","value":" We identify our internal edge isn't correctly routing internal traffic. Beyond authentication and authorisation, it validates that it's 'internal' by inspecting the request and using our configuration service to match against our private network range."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"A configuration service is a Monzo microservice that provides a simple request-response (RPC) interface for other services to store and retrieve key-value pairs representing configuration. Internally, it uses Cassandra to store its data."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We conclude that either the configuration service is down, or our network range has changed. We quickly rule out the latter and focus on the service."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:48"},{"data":{},"marks":[],"nodeType":"text","value":" We try to get data from our configuration service directly and realise it's returning a 404 (not found) response for the key we attempted to retrieve. We're confused, as we believe that if the configuration service wasn't working, it'd have a much wider impact than we were seeing."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:53"},{"data":{},"marks":[],"nodeType":"text","value":" From the metrics, we see successful read and writes to the configuration service, which is surprising given we've just seen it fail to retrieve data. It feels like we're seeing conflicting evidence."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"13:57"},{"data":{},"marks":[],"nodeType":"text","value":" We search for some other keys in the configuration service and realise they're still there."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"14:00"},{"data":{},"marks":[],"nodeType":"text","value":" We bypass the configuration service interface and query Cassandra directly. We confirm that the key used by the internal edge is in fact missing from Cassandra."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"14:02"},{"data":{},"marks":[],"nodeType":"text","value":" At this point we believe we're facing an incident where "},{"data":{},"marks":[{"type":"italic"}],"nodeType":"text","value":"some"},{"data":{},"marks":[],"nodeType":"text","value":" of our data isn't available, so we turn our focus to Cassandra."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"14:04"},{"data":{},"marks":[],"nodeType":"text","value":" Despite our earlier fix for Mastercard, we can see it's still not fully healthy and the payments team keeps working on it. This means that a "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"small number of card payments are still failing"},{"data":{},"marks":[],"nodeType":"text","value":"."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"14:08"},{"data":{},"marks":[],"nodeType":"text","value":" We query whether the new Cassandra servers have taken ownership of some parts of the data. We don't think this is possible given our understanding of what's happened so far, but we keep investigating."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"14:13"},{"data":{},"marks":[],"nodeType":"text","value":" We issue a query for some data in Cassandra and confirm the response is coming from one of the new servers. At this point, we've confirmed that something we thought was impossible, had in fact happened."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"The new servers had joined the cluster, assumed responsibility for some parts of the data (certain partition keys to balance the load), but hadn't yet streamed it over. This explains why some data appeared to be missing."}],"data":{},"nodeType":"paragraph"},{"content":[],"data":{"target":{"fields":{"description":"A diagram showing the new servers in the cluster, missing the data","file":{"contentType":"image/png","details":{"image":{"height":698,"width":1282},"size":116051},"fileName":"Untitled (1).png","url":"//images.ctfassets.net/ro61k101ee59/wcWFwS4HBG1DC8ANWIZUM/6e94d3ec6b43cc82932d67551b477197/Untitled__1_.png"},"title":"The new servers joined the cluster, but the data hadn't streamed over"},"metadata":{"concepts":[],"tags":[]},"sys":{"createdAt":"2019-08-08T16:04:47.617Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"wcWFwS4HBG1DC8ANWIZUM","locale":"en","publishedVersion":75,"revision":1,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Asset","updatedAt":"2019-08-08T16:04:47.617Z"}}},"nodeType":"embedded-asset-block"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"14:18"},{"data":{},"marks":[],"nodeType":"text","value":" We begin decommissioning the new servers one-by-one, to allow us to return data ownership safely into the original cluster servers. Each node takes approximately 8-10 minutes to remove safely."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"14:28"},{"data":{},"marks":[],"nodeType":"text","value":" We remove the first node fully, and we notice an immediate reduction in the number of 404s being raised."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Our internal customer support tooling starts working again, so "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"we can respond to customers using in-app chat"},{"data":{},"marks":[],"nodeType":"text","value":"."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"15:08"},{"data":{},"marks":[],"nodeType":"text","value":" We removed the final Cassandra node, and the immediate impact is over. "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"For the majority of customers, Monzo starts working again as normal."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"15:08 → 23:00"},{"data":{},"marks":[],"nodeType":"text","value":" We keep working through all the data that had been written while the six new servers were actively serving reads and writes. We do this through a combination of replaying events which we store externally, and running internal reconciliation processes which check for data consistency."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"23:00"},{"data":{},"marks":[],"nodeType":"text","value":" We confirm that "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"all customers are now able to access their money, use Monzo as normal, and contact customer support if they need to."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We misunderstood the behaviour of a setting"}],"data":{},"nodeType":"heading-2"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"The issue happened because we expected the new servers to join the cluster, and stay inactive until we carried out a further action. But in fact, when we added new ones they immediately took part in the reading and writing of data, despite not actually holding any data. The source of the misunderstanding was a single setting (or 'flag') that controls how a new server behaves."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"In Cassandra, there's a flag called "},{"data":{},"marks":[{"type":"code"}],"nodeType":"text","value":"auto_bootstrap"},{"data":{},"marks":[],"nodeType":"text","value":" which configures how servers start up and join an existing cluster. The flag controls whether data is automatically streamed from the existing Cassandra servers onto a new server which has joined the cluster. Crucially, it also controls the querying pattern to continue serving read requests to the older servers until the newer servers have streamed all the data."}],"data":{},"nodeType":"paragraph"},{"content":[],"data":{"target":{"fields":{"description":"Diagram showing what we expected to happen, with data coming from the old, active nodes","file":{"contentType":"image/png","details":{"image":{"height":680,"width":1272},"size":110977},"fileName":"Untitled (2).png","url":"//images.ctfassets.net/ro61k101ee59/2wzoTzjfnpfhpGsBAMZLyj/95e80f23d856cce44b21e3e4e2a6721c/Untitled__2_.png"},"title":"We expected new nodes to join the cluster inactive"},"metadata":{"concepts":[],"tags":[]},"sys":{"createdAt":"2019-08-08T16:09:43.478Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"2wzoTzjfnpfhpGsBAMZLyj","locale":"en","publishedVersion":64,"revision":1,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Asset","updatedAt":"2019-08-08T16:09:43.478Z"}}},"nodeType":"embedded-asset-block"},{"content":[],"data":{"target":{"fields":{"content":"\u003cbr\u003e\u003cspan\u003eWhat we expected: new nodes join the cluster in an inactive mode, and get assigned a portion of the data. They remain in this state until we actively stream data into them, one-by-one.\u003c/span\u003e","name":"caption: What we expected: new nodes join the cluster in an inactive mode, and get assigned a portion of the data. They remain in this state until we actively stream data into them, one-by-one."},"metadata":{"concepts":[],"tags":[]},"sys":{"contentType":{"sys":{"id":"htmlSnippet","linkType":"ContentType","type":"Link"}},"createdAt":"2019-08-09T09:05:25.825Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"55iP5qmL3YTH5O0iGIn8Ir","locale":"en","publishedVersion":26,"revision":2,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Entry","updatedAt":"2019-08-09T09:19:08.318Z"}}},"nodeType":"embedded-entry-block"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"In the majority of cases, it's recommended to leave the default of "},{"data":{},"marks":[{"type":"code"}],"nodeType":"text","value":"auto_bootstrap"},{"data":{},"marks":[],"nodeType":"text","value":" to "},{"data":{},"marks":[{"type":"code"}],"nodeType":"text","value":"true"},{"data":{},"marks":[],"nodeType":"text","value":". With the flag in this state, servers join the cluster in an 'inactive' state, have a portion of the data assigned to them, and remain inactive in data reading until the data streaming process finishes."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"But when our last scale up in October 2018 was complete, we'd set the "},{"data":{},"marks":[{"type":"code"}],"nodeType":"text","value":"auto_bootstrap"},{"data":{},"marks":[],"nodeType":"text","value":" flag to "},{"data":{},"marks":[{"type":"code"}],"nodeType":"text","value":"false"},{"data":{},"marks":[],"nodeType":"text","value":" for our production environment. We did this so that if we lost a server in our cluster (for example, due to hardware failure) and had to replace it, we'd restore the data from backups (which would be significantly faster and put less pressure on the rest of the cluster) rather than rebuild it from scratch using the other servers which had the data."}],"data":{},"nodeType":"paragraph"},{"content":[],"data":{"target":{"fields":{"description":"Diagram showing us restoring data from a backup","file":{"contentType":"image/png","details":{"image":{"height":612,"width":966},"size":75998},"fileName":"_inc-platform-issues_-_Google_Slides (2).png","url":"//images.ctfassets.net/ro61k101ee59/3JyHW5jzf8UdJOKlc5bgC1/8777b9b4586466b17a848734c89ed239/_inc-platform-issues_-_Google_Slides__2_.png"},"title":"If we lose a server, we'd want to restore it from a backup rather than other servers"},"metadata":{"concepts":[],"tags":[]},"sys":{"createdAt":"2019-08-08T16:11:50.162Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"3JyHW5jzf8UdJOKlc5bgC1","locale":"en","publishedVersion":64,"revision":1,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Asset","updatedAt":"2019-08-08T16:11:50.162Z"}}},"nodeType":"embedded-asset-block"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"During the scale-up activity, we had no intention to stream the data from backups. With "},{"data":{},"marks":[{"type":"code"}],"nodeType":"text","value":"auto_bootstrap"},{"data":{},"marks":[],"nodeType":"text","value":" set to false, we expected the six new servers would be added to cluster, agree on the partitions of data they were responsible for, and remain inactive until we initiated the rebuild/streaming process on each server, one-by-one."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"But this wasn't the case. It turns out that in addition to the data streaming behaviour, the flag also controls whether new servers join in an active or inactive state. Once the new servers had agreed on the partitions of data they were responsible for, they assumed full responsibility without having any of the underlying data, and began serving queries."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Because some of the data was being served from the new servers which didn't have any data yet, that data appeared to be missing."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"So when some customers opened the app, for example, transactions that should have existed couldn't be found, which caused their account balances to appear incorrectly."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Once the issue had been resolved, we were able to fully recover the data and correct any issues."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"To stop this happening again, we're making some changes"}],"data":{},"nodeType":"heading-2"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"There are a few things we can learn from this issue, and fix to makes sure it doesn't happen again."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We've identified gaps in our knowledge of operating Cassandra"}],"data":{},"nodeType":"heading-3"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"While we routinely perform operations like rolling restarts and server upgrades on Cassandra, some actions (like adding more servers) are less common."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"We'd tested the scale-up on our test environment, but not to the same extent as production."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Instead of adding six servers, we tested with one."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"To gain confidence in the production rollout, we brought a new server online and left it in the initial 'no data' state for several hours. We did this across two clusters."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We were able to confirm that there was no impact on the rest of the cluster or any of the users of the environment. And at this point we were happy that the initial joining behaviour of "},{"data":{},"marks":[{"type":"code"}],"nodeType":"text","value":"auto_bootstrap"},{"data":{},"marks":[],"nodeType":"text","value":" was benign as we expected. So we continued to stream the data to the new server, monitored throughout, and confirmed there were no issues with data consistency or availability."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"What we failed to account for was quorum (the three servers agreeing on a value). With only one new server, it wouldn't matter if it joined the cluster fully and didn't hold any data. In this case, we'd have agreement from the other two servers in the cluster."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"But when we added six servers to production, the data ownership had two or three members reallocated to the new nodes, meaning we didn't have the same guarantee because the underlying data didn't reallocate."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We've already fixed the incorrect setting"}],"data":{},"nodeType":"heading-3"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We've already fixed our use of "},{"data":{},"marks":[{"type":"code"}],"nodeType":"text","value":"auto_bootstrap"},{"data":{},"marks":[],"nodeType":"text","value":". And we've also reviewed and documented all our decisions around the other Cassandra settings. This means we have more extensive runbooks – the operational guides we use to provide step-by-step plans on performing operations such as a scale up or a restart of Cassandra. This'll help fill the gaps in our knowledge, and make sure that knowledge is spread to all our engineers."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Another key issue that delayed our actions was the lack of metrics showing Cassandra as a primary cause of the issue. So we're also looking at exposing more metrics and adding potential alerting for strong shifts in metrics like 'row not found'."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We'll split our single Cassandra cluster into smaller ones to reduce the impact one change can have"}],"data":{},"nodeType":"heading-3"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"For a long time, we've run a single Cassandra cluster for all our services. Each service has its own dedicated area (known as a keyspace) within the cluster. But the data itself is spread across a shared set of underlying servers."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"The single cluster approach has been advantageous for engineers building services – they don't have to worry about which cluster to put a service on, and we only have to operationally manage and monitor one thing. But a downside of this design is that a single change can have a far-reaching impact, like we saw with this issue. We’d like to reduce the likelihood that any single activity can impact more than one area of Monzo."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"With one cluster, it's also much harder to pinpoint the source of failure. In this instance we took almost an hour from the first alert to the point where we pulled the information into a single coherent picture that highlighted Cassandra at fault. With smaller and more constrained system configurations, we believe this would have been a much less complex issue to deal with."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"In the long term, we plan to split up our single large cluster into multiple smaller ones. This will drastically reduce the likelihood and impact of repeat issues like this one, and make it safer for us to operate at scale. We want to make sure we get it right though; doing it in such a way that doesn't introduce too much operational complexity, or slow our engineers down at releasing new features to customers."}],"data":{},"nodeType":"paragraph"},{"content":[],"data":{"target":{"fields":{"description":"Diagram showing one large cluster being split into six separate ones","file":{"contentType":"image/png","details":{"image":{"height":500,"width":1476},"size":94332},"fileName":"Untitled (3).png","url":"//images.ctfassets.net/ro61k101ee59/6mQyqjtoPHmpYw2ICpxfoF/c01ddf9d9874ebdba42e6232332c2682/Untitled__3_.png"},"title":"We plan to split our large cluster into several smaller ones"},"metadata":{"concepts":[],"tags":[]},"sys":{"createdAt":"2019-08-08T16:12:57.768Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"6mQyqjtoPHmpYw2ICpxfoF","locale":"en","publishedVersion":69,"revision":1,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Asset","updatedAt":"2019-08-08T16:12:57.768Z"}}},"nodeType":"embedded-asset-block"},{"content":[],"data":{},"nodeType":"hr"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We’re really sorry this happened, and we’re committed to fixing it for the future. Let us know if you found this debrief useful, and share any other questions or feedback with us too."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":""}],"data":{},"nodeType":"paragraph"}],"componentProps":{},"blogData":{"blogTitle":"We had issues with Monzo on 29th July. Here's what happened, and what we did to fix it.","blogStartDate":"2019-08-09T09:00+01:00","blogCategories":[{"fields":{"categoryName":"Monzo HQ"},"metadata":{"concepts":[],"tags":[]},"sys":{"contentType":{"sys":{"id":"blogCategory","linkType":"ContentType","type":"Link"}},"createdAt":"2019-06-12T12:46:58.464Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"79kemfU92zGvYcnNEzkDnA","locale":"en","publishedVersion":7,"revision":2,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Entry","updatedAt":"2020-01-13T14:46:20.673Z"}}],"blogAuthors":[{"fields":{"jobTitle":"Platform Team Lead","name":"Chris Evans","profilePicture":{"fields":{"file":{"contentType":"image/png","details":{"image":{"height":150,"width":150},"size":49385},"fileName":"chrisevans.png","url":"//images.ctfassets.net/ro61k101ee59/19f3U8X1JmEg8ia7q2Oc2U/60d29b0bf849f73e4911612c296a12fb/chrisevans.png"},"title":"chrisevans"},"metadata":{"concepts":[],"tags":[]},"sys":{"createdAt":"2019-06-12T12:56:22.512Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"19f3U8X1JmEg8ia7q2Oc2U","locale":"en","publishedVersion":2,"revision":1,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Asset","updatedAt":"2019-06-12T12:56:22.512Z"}}},"metadata":{"concepts":[],"tags":[]},"sys":{"contentType":{"sys":{"id":"author","linkType":"ContentType","type":"Link"}},"createdAt":"2019-06-12T12:47:29.383Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"SoQvfrUUJLRKJzyMuAowo","locale":"en","publishedVersion":2,"revision":1,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Entry","updatedAt":"2019-06-12T12:47:29.383Z"}},{"fields":{"jobTitle":"Principal Engineer","name":"Suhail Patel","profilePicture":{"fields":{"description":"Profile picture for Suhail Patel, a Principal Engineer at Monzo","file":{"contentType":"image/png","details":{"image":{"height":512,"width":512},"size":412044},"fileName":"E018CAQD4KB-W019A24DHUH-d5aa99cfefb8-512.png","url":"//images.ctfassets.net/ro61k101ee59/7mFHSb5LYf1TsAyi4896aW/9e6a39871a70b63cf04b3af0da9a2068/E018CAQD4KB-W019A24DHUH-d5aa99cfefb8-512.png"},"title":"Suhail Patel"},"metadata":{"concepts":[],"tags":[]},"sys":{"createdAt":"2019-06-12T13:00:36.951Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"7mFHSb5LYf1TsAyi4896aW","locale":"en","publishedVersion":20,"revision":5,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Asset","updatedAt":"2025-05-02T14:08:04.276Z"}}},"metadata":{"concepts":[],"tags":[]},"sys":{"contentType":{"sys":{"id":"author","linkType":"ContentType","type":"Link"}},"createdAt":"2019-06-12T12:47:52.107Z","environment":{"sys":{"id":"master","linkType":"Environment","type":"Link"}},"id":"66PJv0iceQbV9FGOBUoOGD","locale":"en","publishedVersion":9,"revision":4,"space":{"sys":{"id":"ro61k101ee59","linkType":"Space","type":"Link"}},"type":"Entry","updatedAt":"2025-05-02T14:07:26.226Z"}}]},"nextLocale":"gb","locale":{"language":{"flag":"🇬🇧","name":"English","regionName":"United Kingdom","i18nName":"","languageCode":"en","contentfulLocaleCode":"en","localeCode":"en-GB","features":{"legal":true,"careers":true,"signUp":true,"marketing":true}},"region":{"alpha2":"GB","alpha3":"GBR","defaultLanguageCode":"en","shortName":"UK","name":"United Kingdom","flag":"🇬🇧","languages":[{"flag":"🇬🇧","name":"English","regionName":"United Kingdom","i18nName":"","languageCode":"en","contentfulLocaleCode":"en","localeCode":"en-GB","features":{"legal":true,"careers":true,"signUp":true,"marketing":true}}]}},"anonID":"anon_d24e61ad-433c-4c74-b718-eeba2375c4fe","experiments":[],"dynamicText":{"nav":"Sign up","cta":"Open an account for free"},"copy":{"app-store-button.app-store.label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Download on the App Store"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Download on the App Store"},"source":"TMS"}}},"app-store-button.play-store.label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Get it on Google Play"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Get it on Google Play"},"source":"TMS"}}},"app_monzo_com.article.table_of_contents":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Table of Contents"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Table of Contents"},"source":"TMS"}}},"app_monzo_com.layout_minimal.footer.legal_disclosure":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monzo Bank Limited is a company registered in England and Wales (No. 09446231). Monzo Bank Ltd is authorised by the Prudential Regulation Authority (PRA) and regulated by the Financial Conduct Authority and the Prudential Regulation Authority. Our Financial Services Register number is 730427."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monzo is a financial technology company; not a bank. Banking services are provided by Lead Bank, Member FDIC. The Monzo Personal and Joint Debit Card is issued by Lead Bank, Member FDIC, pursuant to licensing by Mastercard International Inc. See Lead Bank Terms and Lead Bank Cardholder Agreement for more details. Funds held in the Monzo deposit accounts are held with Lead Bank, Member FDIC, and are eligible for up to $250,000 in pass-through insurance in the event Lead Bank fails and if specific deposit insurance requirements are met and your card is registered. FDIC insurance does not protect funds in the event of Monzo's failure or from the risk of theft or fraud. See FDIC Prepaid Cards and Deposit Insurance Coverage. © 2025 Monzo, Inc. All rights reserved."},"source":"TMS"}}},"app_monzo_com.layout_minimal.footer.privacy_notice_link":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"https://monzo.com/legal/privacy-notice/"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"https://webviews.monzo.com/usa/privacy-notice"},"source":"TMS"}}},"app_monzo_com.layout_minimal.footer.privacy_notice_text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Privacy Notice"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Privacy Notice"},"source":"TMS"}}},"app_monzo_com.layout_minimal.footer.terms_link":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"https://monzo.com/legal/terms-and-conditions/"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"https://webviews.monzo.com/usa/lead-bank-terms-of-service"},"source":"TMS"}}},"app_monzo_com.layout_minimal.footer.terms_text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Terms and Conditions"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Lead Bank Terms"},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.category-advertising-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Advertising cookies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Advertising cookies"},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.category-advertising-summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"What’s worse than ads? Irrelevant ads. We follow your trail of virtual cookie crumbs to show you more interesting ads and marketing."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"What’s worse than ads? Irrelevant ads. We follow your trail of virtual cookie crumbs to show you more interesting ads and marketing."},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.category-analytics-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Analytics cookies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Analytics cookies"},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.category-analytics-summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"The science-y sounding cookie that’s interested in what you do on our website. Where you came from, what pages you visit and for how long."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"The science-y sounding cookie that’s interested in what you do on our website. Where you came from, what pages you visit and for how long."},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.category-functional-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Functional cookies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Functional cookies"},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.category-functional-summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"These cookies allow optional features to work, but don't track you or your behaviour."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"These cookies allow optional features to work, but don't track you or your behaviour."},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.category-marketing-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Marketing cookies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Marketing cookies"},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.category-marketing-summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"The curious cookie that gets to know you better. By knowing your preferences on the site, we can enhance your journey to make things more relevant to you."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"The curious cookie that gets to know you better. By knowing your preferences on the site, we can enhance your journey to make things more relevant to you."},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.category-required-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Required cookies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Required cookies"},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.category-required-summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"This trusty cookie is a must for our website to work and keep you safe and secure. Need we say more?"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"This trusty cookie is a must for our website to work and keep you safe and secure. Need we say more?"},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.column-cookie":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Cookie"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Cookie"},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.column-expires":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Expires"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Expires"},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.column-used-to":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Used to"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Used to"},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"A full list of the cookies we use across Monzo’s websites."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"A full list of the cookies we use across Monzo’s websites."},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.empty":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Our cookie list is being updated. In the meantime, you can manage your cookie preferences on our \u003clink\u003ecookie notice\u003c/link\u003e page."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Our cookie list is being updated. In the meantime, you can manage your cookie preferences on our \u003clink\u003ecookie notice\u003c/link\u003e page."},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.hero-title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Cookie List"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Cookie List"},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.intro":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"These are the cookies we use across Monzo’s websites. To choose which ones we can use, visit our \u003clink\u003ecookie notice\u003c/link\u003e."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"These are the cookies we use across Monzo’s websites. To choose which ones we can use, visit our \u003clink\u003ecookie notice\u003c/link\u003e."},"source":"TMS"}}},"app_monzo_com.legal.cookie-list.page-title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Cookie List"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Cookie List"},"source":"TMS"}}},"app_monzo_com.legal.past_versions":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Past versions"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Past versions"},"source":"TMS"}}},"app_monzo_com.legal.version":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Version {{ label }}"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Version {{ label }}"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.autoselect_error_one":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You need a personal account to have a joint or an Under 16s account"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You need a personal account to have a joint or an Under 16s account"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.autoselect_error_two":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"so we can confirm who you are. Once you have it, you don't have to use it if you don't want to."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"so we can confirm who you are. Once you have it, you don't have to use it if you don't want to."},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.blurb":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You can choose more than one:"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You can choose more than one:"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.business_account_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Business"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Business"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.child_account_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Under 16s (for 6–15 year olds)"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Under 16s (for 6–15 year olds)"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.company_type_error":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Choose the option that best describes your business"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Choose the option that best describes your business"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.error":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"There was an unknown error submitting your details. Try again later."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"There was an unknown error submitting your details. Try again later."},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.idle_submit":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Get on the waitlist"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Get on the waitlist"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.joint_account_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Joint"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Joint"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.legend":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Preferred bank account(s)"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Preferred bank account(s)"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.loading_submit":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Joining the waitlist"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Joining the waitlist"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.other_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Other"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Other"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.personal_account_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Personal"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Personal"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.private_company_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"I'm a limited company"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"I'm a limited company"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.sole_trader_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"I'm a sole trader"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"I'm a sole trader"},"source":"TMS"}}},"app_monzo_com.waitlist.account_form.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Which accounts are you after?"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Which accounts are you after?"},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.error_generic":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"There was an unknown error submitting your details. Try again later."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"There was an unknown error submitting your details. Try again later."},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.error_missing_code":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"This link is missing its code. Please use the original link."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"This link is missing its code. Please use the original link."},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.form_blurb":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Be one of the first to try Monzo in Spain and earn €25 when you first pay with your card. [Ts\u0026Cs and eligibility criteria apply.]({{ terms_url }})"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Be one of the first to try Monzo in Spain and earn €25 when you first pay with your card. [Ts\u0026Cs and eligibility criteria apply.]({{ terms_url }})"},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.form_blurb_smallprint":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Only the first 250 people to sign through this page can skip the queue. The €25 is limited to the first 10,000 people to spend on their card."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Only the first 250 people to sign through this page can skip the queue. The €25 is limited to the first 10,000 people to spend on their card."},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.form_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You've been invited to the early access waitlist for Monzo in Spain 🇪🇸"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You've been invited to the early access waitlist for Monzo in Spain 🇪🇸"},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.language_en":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"English"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"English"},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.language_es":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Español"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Español"},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.meta_description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Be one of the first to try Monzo in Spain and earn €25 when you first pay with your card."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Be one of the first to try Monzo in Spain and earn €25 when you first pay with your card."},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.og_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You've been invited to the early access waitlist for Monzo in Spain"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You've been invited to the early access waitlist for Monzo in Spain"},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.page_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Join the Monzo Spain waitlist"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Join the Monzo Spain waitlist"},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.success_message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"An email's on its way.\u003cbr\u003eOpen it up and secure\u003cbr\u003ea spot."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"An email's on its way.\u003cbr\u003eOpen it up and secure\u003cbr\u003ea spot."},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.terms":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Your data will be processed as part of our [privacy notice]({{ privacy_notice_url }}). By signing up to our waitlist you're giving us permission to contact you about products and services in your location, and how you can be involved."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Your data will be processed as part of our [privacy notice]({{ privacy_notice_url }}). By signing up to our waitlist you're giving us permission to contact you about products and services in your location, and how you can be involved."},"source":"TMS"}}},"app_monzo_com.waitlist.affiliates.terms_consent":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"By registering your interest, you are giving us permission to contact you about our products and services developing in your country and send information about how you can help shape them."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"By registering your interest, you are giving us permission to contact you about our products and services developing in your country and send information about how you can help shape them."},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.action_subtitle":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Or head to the app store and\u003cbr /\u003e search for \\u2018Monzo\\u2019."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Or head to the app store and\u003cbr /\u003e search for \\u2018Monzo\\u2019."},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.action_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Scan to download the Monzo app"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Scan to download the Monzo app"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.big_text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"It's happening"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"It's happening"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.carousel_four_subtitle":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Up to \\u20AC100,000 by the Deposit Guarantee Scheme,"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Up to \\u20AC100,000 by the Deposit Guarantee Scheme,"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.carousel_four_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Eligible deposits are protected"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Eligible deposits are protected"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.carousel_one_subtitle":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Changing the way they feel about money"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Changing the way they feel about money"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.carousel_one_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"{{ number_of_customers }} million customers in the UK"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"{{ number_of_customers }} million customers in the UK"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.carousel_three_subtitle":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Authorised by the Central Bank of Ireland."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Authorised by the Central Bank of Ireland."},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.carousel_three_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monzo is a regulated Bank"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monzo is a regulated Bank"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.carousel_two_subtitle":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"67% of people join through word of mouth."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"67% of people join through word of mouth."},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.carousel_two_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Customers love us"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Customers love us"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.download_button":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Download the app"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Download the app"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.download_details":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Download the Monzo app to find out your position and generally just take a look around."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Download the Monzo app to find out your position and generally just take a look around."},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.error_message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Something went wrong. Please try again later."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Something went wrong. Please try again later."},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.expired_header":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"It's been a while, can we try again?"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"It's been a while, can we try again?"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.expired_message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You signed up to the waitlist a some time ago, and this email confirmation link has gone stale. We've sent you a new one to your email inbox. \u003cbr /\u003e \u003cbr /\u003e Go confirm your email whilst it's fresh to help keep your new account secure, the link will expire in 2 weeks."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You signed up to the waitlist a some time ago, and this email confirmation link has gone stale. We've sent you a new one to your email inbox. \u003cbr /\u003e \u003cbr /\u003e Go confirm your email whilst it's fresh to help keep your new account secure, the link will expire in 2 weeks."},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.loading":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Confirming your email address"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Confirming your email address"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.next_step_one":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Download app"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Download app"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.next_step_three":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Find out your position"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Find out your position"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.next_step_two":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Tap \\u2018I\\u2019m new to Monzo\\u2019 on the first screen"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Tap \\u2018I\\u2019m new to Monzo\\u2019 on the first screen"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.next_steps_subtitle":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Head over to the app to unlock exclusive perks and content to get you set up with Monzo."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Head over to the app to unlock exclusive perks and content to get you set up with Monzo."},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.next_steps_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"What's Next"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"What's Next"},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.second_line_text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Your name's officially on the list."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Your name's officially on the list."},"source":"TMS"}}},"app_monzo_com.waitlist.confirm_page.unlaunched_message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We love that you love Monzo!\u003cbr /\u003eYou'll be the first to know when we arrive."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We love that you love Monzo!\u003cbr /\u003eYou'll be the first to know when we arrive."},"source":"TMS"}}},"app_monzo_com.waitlist.download_page.button_text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Open the app"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Open the app"},"source":"TMS"}}},"app_monzo_com.waitlist.download_page.desktop_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You'll need your phone for that"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You'll need your phone for that"},"source":"TMS"}}},"app_monzo_com.waitlist.download_page.mobile_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You'll need the app for that"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You'll need the app for that"},"source":"TMS"}}},"app_monzo_com.waitlist.download_page.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Download the Monzo app"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Download the Monzo app"},"source":"TMS"}}},"app_monzo_com.waitlist.form_error.existing_user_button":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Go to help article"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Go to help article"},"source":"TMS"}}},"app_monzo_com.waitlist.form_error.existing_user_header":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"It looks like you already have an account"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"It looks like you already have an account"},"source":"TMS"}}},"app_monzo_com.waitlist.form_error.existing_user_message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Unfortunately, you can only have a Monzo account in one country at a time, and you'll need to close your existing account first. \u003cbr /\u003e \u003cbr /\u003e Once you've closed your existing account, you can sign up to the waitlist again."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Unfortunately, you can only have a Monzo account in one country at a time, and you'll need to close your existing account first. \u003cbr /\u003e \u003cbr /\u003e Once you've closed your existing account, you can sign up to the waitlist again."},"source":"TMS"}}},"app_monzo_com.waitlist.info_form.email_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Email address"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Email address"},"source":"TMS"}}},"app_monzo_com.waitlist.info_form.invalid_email_message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You must enter a valid email address"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You must enter a valid email address"},"source":"TMS"}}},"app_monzo_com.waitlist.info_form.legend":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Personal information"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Personal information"},"source":"TMS"}}},"app_monzo_com.waitlist.info_form.submit":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Continue"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Continue"},"source":"TMS"}}},"app_monzo_com.waitlist.info_form.terms":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We secure your data in line with our [privacy notice](/ie/legal/privacy-notice/).\u003cbr\u003e\u003cbr\u003e\nBy registering your interest, you are giving us permission to contact you about our products and services developing in your country and send information about how you can help shape them."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We secure your data in line with our [privacy notice](/ie/legal/privacy-notice/).\u003cbr\u003e\u003cbr\u003e\nBy registering your interest, you are giving us permission to contact you about our products and services developing in your country and send information about how you can help shape them."},"source":"TMS"}}},"app_monzo_com.waitlist.launched.account_form.success_message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"An email's on its way.\u003cbr\u003eOpen it up and secure\u003cbr\u003ea spot."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"An email's on its way.\u003cbr\u003eOpen it up and secure\u003cbr\u003ea spot."},"source":"TMS"}}},"app_monzo_com.waitlist.launched.info_form.blurb":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Be one of the first people to have Monzo in {{ region_name }} and help us shape the experience together."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Be one of the first people to have Monzo in {{ region_name }} and help us shape the experience together."},"source":"TMS"}}},"app_monzo_com.waitlist.launched.info_form.blurb_referral":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Be one of the first to try Monzo in Spain. Join the waitlist, refer friends to move up the queue, and earn rewards if you're among the first customers to start spending."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Be one of the first to try Monzo in Spain. Join the waitlist, refer friends to move up the queue, and earn rewards if you're among the first customers to start spending."},"source":"TMS"}}},"app_monzo_com.waitlist.launched.info_form.offer":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Get €25 when you’re one of the first 10,000 to pay with your new Monzo card on a personal account.\u003cbr\u003e\u003cbr\u003eGet another €50 if you’re one of the first 1,000 businesses or sole traders to spend on your business banking card.\u003cbr\u003e\u003cbr\u003e[Offer Terms.]({{ promo_terms_url }})"},"source":"TMS"}}},"app_monzo_com.waitlist.launched.info_form.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Get your name on the list {{ region_flag }}"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Get your name on the list {{ region_flag }}"},"source":"TMS"}}},"app_monzo_com.waitlist.launched.info_form.title_referral":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Someone referred you to the early access waitlist for Monzo in {{ region_name }} {{ region_flag }}"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Someone referred you to the early access waitlist for Monzo in {{ region_name }} {{ region_flag }}"},"source":"TMS"}}},"app_monzo_com.waitlist.leave_page.success_blurb":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We won't contact you about Monzo waitlist anymore."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We won't contact you about Monzo waitlist anymore."},"source":"TMS"}}},"app_monzo_com.waitlist.leave_page.success_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You've been removed from the waitlist"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You've been removed from the waitlist"},"source":"TMS"}}},"app_monzo_com.waitlist.leave_page.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Leave the {{ region_name }} waitlist"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Leave the {{ region_name }} waitlist"},"source":"TMS"}}},"app_monzo_com.waitlist.page_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Join the {{ region_name }} waitlist"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Join the {{ region_name }} waitlist"},"source":"TMS"}}},"app_monzo_com.waitlist.referral_error.button":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Join waitlist without referral"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Join waitlist without referral"},"source":"TMS"}}},"app_monzo_com.waitlist.referral_error.message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"It could be an issue with the link or the person who sent it to you. Ask them to resend it so you can try again. \u003cbr /\u003e\u003cbr /\u003eYou can join the waitlist without their referral but neither of you will get bumped up the list."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"It could be an issue with the link or the person who sent it to you. Ask them to resend it so you can try again. \u003cbr /\u003e\u003cbr /\u003eYou can join the waitlist without their referral but neither of you will get bumped up the list."},"source":"TMS"}}},"app_monzo_com.waitlist.referral_error.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Ah, we have a problem"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Ah, we have a problem"},"source":"TMS"}}},"app_monzo_com.waitlist.regulatory_text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monzo Bank Europe Designated Activity Company, trading as Monzo, is regulated by the Central Bank of Ireland. Monzo Bank Europe Designated Activity Company is a private company limited by shares registered in Ireland (registration no. 770591). Registered office: Unit 1 - Floor 4, One Central Plaza Dame Street Dublin 2 D02 K7K5, Ireland."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monzo Bank Europe Designated Activity Company, trading as Monzo, is regulated by the Central Bank of Ireland. Monzo Bank Europe Designated Activity Company is a private company limited by shares registered in Ireland (registration no. 770591). Registered office: Unit 1 - Floor 4, One Central Plaza Dame Street Dublin 2 D02 K7K5, Ireland."},"source":"TMS"}}},"app_monzo_com.waitlist.risk_rating.description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"This number is indicative of the risk of the product, 1/6 being indicative of lower risk and 6/6 of higher risk."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"This number is indicative of the risk of the product, 1/6 being indicative of lower risk and 6/6 of higher risk."},"source":"TMS"}}},"app_monzo_com.waitlist.risk_rating.disclaimer":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monzo is a member of the Irish Deposit Guarantee Scheme. For money deposits the maximum guaranteed amount is 100,000 euros per account holder and entity."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monzo is a member of the Irish Deposit Guarantee Scheme. For money deposits the maximum guaranteed amount is 100,000 euros per account holder and entity."},"source":"TMS"}}},"app_monzo_com.waitlist.risk_rating.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Risk indicator for all Monzo accounts"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Risk indicator for all Monzo accounts"},"source":"TMS"}}},"ayuda.article.feedback.no":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"No"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"No"},"source":"TMS"}}},"ayuda.article.feedback.question":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Was this article helpful?"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Was this article helpful?"},"source":"TMS"}}},"ayuda.article.feedback.thanks":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Thank you for your feedback!"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Thank you for your feedback!"},"source":"TMS"}}},"ayuda.article.feedback.yes":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Yes"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Yes"},"source":"TMS"}}},"ayuda.article.related.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Related articles"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Related articles"},"source":"TMS"}}},"ayuda.article.seo.title.prefix":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monzo Help"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monzo Help"},"source":"TMS"}}},"ayuda.breadcrumb.home":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Help "},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Help "},"source":"TMS"}}},"ayuda.category.empty":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Sorry, we don't have any articles for this category."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Sorry, we don't have any articles for this category."},"source":"TMS"}}},"ayuda.category.mobile.nav.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Help articles"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Help articles"},"source":"TMS"}}},"ayuda.contact.get.in.touch":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Get in touch with us in app"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Get in touch with us in app"},"source":"TMS"}}},"ayuda.contact.phone.disclaimer":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"The number above is only for customer support queries and we won't be able to help with other questions. We're free to call, but if you're calling from abroad, please be aware that you may be charged by your phone provider."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"The number above is only for customer support queries and we won't be able to help with other questions. We're free to call, but if you're calling from abroad, please be aware that you may be charged by your phone provider."},"source":"TMS"}}},"ayuda.contact.ps17.link":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"PS17/26"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"PS17/26"},"source":"TMS"}}},"ayuda.contact.ps17.middle":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"a document from the Financial Conduct Authority, see"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"a document from the Financial Conduct Authority, see"},"source":"TMS"}}},"ayuda.contact.ps17.prefix":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"If you're looking for our"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"If you're looking for our"},"source":"TMS"}}},"ayuda.contact.ps17.services.link":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Information about our Personal Current Account Services"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Information about our Personal Current Account Services"},"source":"TMS"}}},"ayuda.contact.psd.link":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"European Commission's frequently asked questions"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"European Commission's frequently asked questions"},"source":"TMS"}}},"ayuda.contact.psd.prefix":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"If you're looking for information about the Payment Services Directive, see the"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"If you're looking for information about the Payment Services Directive, see the"},"source":"TMS"}}},"ayuda.contact.rights.link":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"leaflet published by the European Commission"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"leaflet published by the European Commission"},"source":"TMS"}}},"ayuda.contact.rights.prefix":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"If you're looking for information on your rights when making payments in Europe, you can find it in this"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"If you're looking for information on your rights when making payments in Europe, you can find it in this"},"source":"TMS"}}},"ayuda.contact.table.account.type":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Account Type"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Account Type"},"source":"TMS"}}},"ayuda.contact.table.current.account":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Current Account"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Current Account"},"source":"TMS"}}},"ayuda.contact.table.from.abroad":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"From abroad"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"From abroad"},"source":"TMS"}}},"ayuda.contact.table.from.local":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"From the UK"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"From the US"},"source":"TMS"}}},"ayuda.emergency.cta":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Protect your account"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Protect your account"},"source":"TMS"}}},"ayuda.emergency.description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Check your balance and freeze your card"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Check your balance and freeze your card"},"source":"TMS"}}},"ayuda.emergency.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Lost card or phone"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Lost card or phone"},"source":"TMS"}}},"ayuda.home.hero.alt":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"a group of speech bubbles with random icons, surrounded by stars."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"a group of speech bubbles with random icons, surrounded by stars."},"source":"TMS"}}},"ayuda.home.hero.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"How can we help you today?"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"How can we help you today?"},"source":"TMS"}}},"ayuda.home.seo.description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"The home for everything you need to know about using Monzo."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"The home for everything you need to know about using Monzo."},"source":"TMS"}}},"checklist-email-submission.email.invalid":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Enter a valid email address"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Enter a valid email address"},"source":"TMS"}}},"consent-management.category-advertising.label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Advertising cookies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Advertising cookies"},"source":"TMS"}}},"consent-management.category-advertising.summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"What’s worse than ads? Irrelevant ads. We follow your trail of virtual cookie crumbs to show you more interesting ads and marketing."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"What’s worse than ads? Irrelevant ads. We follow your trail of virtual cookie crumbs to show you more interesting ads and marketing."},"source":"TMS"}}},"consent-management.category-analytics.label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Analytics cookies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Analytics cookies"},"source":"TMS"}}},"consent-management.category-analytics.summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"The science-y sounding cookie that’s interested in what you do on our website. Where you came from, what pages you visit and for how long."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"The science-y sounding cookie that’s interested in what you do on our website. Where you came from, what pages you visit and for how long."},"source":"TMS"}}},"consent-management.category-functionality.label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Functional cookies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Functional cookies"},"source":"TMS"}}},"consent-management.category-functionality.summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"These cookies allow optional features to work, but don't track you or your behaviour."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"These cookies allow optional features to work, but don't track you or your behaviour."},"source":"TMS"}}},"consent-management.category-marketing.label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Marketing cookies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Marketing cookies"},"source":"TMS"}}},"consent-management.category-marketing.summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"The curious cookie that gets to know you better. By knowing your preferences on the site, we can enhance your journey to make things more relevant to you."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"The curious cookie that gets to know you better. By knowing your preferences on the site, we can enhance your journey to make things more relevant to you."},"source":"TMS"}}},"consent-management.category-required.label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Required cookies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Required cookies"},"source":"TMS"}}},"consent-management.category-required.summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"This trusty cookie is a must for our website to work and keep you safe and secure. Need we say more?"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"This trusty cookie is a must for our website to work and keep you safe and secure. Need we say more?"},"source":"TMS"}}},"consent-management.cookie-banner.allow-all":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Accept all"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Accept all"},"source":"TMS"}}},"consent-management.cookie-banner.cookie-notice-url":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"/legal/cookie-notice"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"/legal/cookie-notice"},"source":"TMS"}}},"consent-management.cookie-banner.customise":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Customise"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Customise"},"source":"TMS"}}},"consent-management.cookie-banner.reject-all":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Reject all"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Reject all"},"source":"TMS"}}},"consent-management.cookie-banner.summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We’re not talking about the crunchy, tasty kind. These cookies help us keep our website safe, give you a better experience and show more relevant ads. You can learn more about \u003cLink\u003eour cookie policy\u003c/Link\u003e."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We’re not talking about the crunchy, tasty kind. These cookies help us keep our website safe, give you a better experience and show more relevant ads. You can learn more about \u003cLink\u003eour cookie policy\u003c/Link\u003e."},"source":"TMS"}}},"consent-management.cookie-banner.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Can we use optional cookies?"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Can we use optional cookies?"},"source":"TMS"}}},"consent-management.cookie-dialog.cookie-notice-url":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"/legal/cookie-notice"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"/legal/cookie-notice"},"source":"TMS"}}},"consent-management.cookie-dialog.summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We use 4 types of cookie. You can choose which cookies you’re happy for us to use. For more detail, and a list of the cookies we use, see the \u003cLink\u003eMonzo cookie policy\u003c/Link\u003e."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We use 4 types of cookie. You can choose which cookies you’re happy for us to use. For more detail, and a list of the cookies we use, see the \u003cLink\u003eMonzo cookie policy\u003c/Link\u003e."},"source":"TMS"}}},"consent-management.cookie-dialog.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Adjust your cookie preferences"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Adjust your cookie preferences"},"source":"TMS"}}},"consent-management.cookie-form.save-preferences":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Save preferences"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Save preferences"},"source":"TMS"}}},"copy.human_date.at":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"{{day}} at {{time}}"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"{{day}} at {{time}}"},"source":"TMS"}}},"copy.human_date.days_from_now":{"localized_messages":{"en-GB":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} day from now"},"other":"{{count}} days from now","plural_type":""},"source":"TMS"},"en-US":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} day from now"},"other":"{{count}} days from now","plural_type":""},"source":"TMS"}}},"copy.human_date.today":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Today"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Today"},"source":"TMS"}}},"copy.human_date.tomorrow":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Tomorrow"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Tomorrow"},"source":"TMS"}}},"copy.human_date.yesterday":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Yesterday"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Yesterday"},"source":"TMS"}}},"copy.human_time_interval.days":{"localized_messages":{"en-GB":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} day"},"other":"{{count}} days","plural_type":""},"source":"TMS"},"en-US":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} day"},"other":"{{count}} days","plural_type":""},"source":"TMS"}}},"copy.human_time_interval.hours":{"localized_messages":{"en-GB":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} hour"},"other":"{{count}} hours","plural_type":""},"source":"TMS"},"en-US":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} hour"},"other":"{{count}} hours","plural_type":""},"source":"TMS"}}},"copy.human_time_interval.minutes":{"localized_messages":{"en-GB":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} minute"},"other":"{{count}} minutes","plural_type":""},"source":"TMS"},"en-US":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} minute"},"other":"{{count}} minutes","plural_type":""},"source":"TMS"}}},"copy.human_time_interval.seconds":{"localized_messages":{"en-GB":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} second"},"other":"{{count}} seconds","plural_type":""},"source":"TMS"},"en-US":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} second"},"other":"{{count}} seconds","plural_type":""},"source":"TMS"}}},"copy.human_time_interval.weeks":{"localized_messages":{"en-GB":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} week"},"other":"{{count}} weeks","plural_type":""},"source":"TMS"},"en-US":{"type":"PLURAL_FORMS","plural_forms":{"one":{"content":"{{count}} week"},"other":"{{count}} weeks","plural_type":""},"source":"TMS"}}},"cta-section.es.subtitle":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Join over {{ customerCount }} personal and business customers in the UK already banking with Monzo."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Join over {{ customerCount }} personal and business customers in the UK already banking with Monzo."},"source":"TMS"}}},"cta-section.es.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Get early access"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Get early access"},"source":"TMS"}}},"error-page.homepage-button.text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Visit the homepage"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Visit the homepage"},"source":"TMS"}}},"error-page.not-found.message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Sorry, we can't find the page you're looking for"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Sorry, we can't find the page you're looking for"},"source":"TMS"}}},"error-page.not-found.seo-description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Page not found"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Page not found"},"source":"TMS"}}},"error-page.server-error.message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Sorry, we can't find the page you're looking for"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Sorry, we can't find the page you're looking for"},"source":"TMS"}}},"error-page.server-error.seo-description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Something went wrong"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Something went wrong"},"source":"TMS"}}},"legal.download_as_pdf.default":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Download as PDF"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Download as PDF"},"source":"TMS"}}},"legal.meta_description.default":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monzo are building a smart bank on your smartphone and we need your help to create the bank of the future."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monzo are building a smart bank on your smartphone and we need your help to create the bank of the future."},"source":"TMS"}}},"legal.og_description.default":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monzo are building a smart bank on your smartphone and we need your help to create the bank of the future."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monzo are building a smart bank on your smartphone and we need your help to create the bank of the future."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.announcement.empty":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Enter your monthly take-home target to see your estimate."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Enter your monthly take-home target to see your estimate."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.announcement.summary":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You'd need to invoice {{ invoice }} a month to take home {{ takeHome }}. Monthly cuota {{ cuota }}, income tax {{ tax }}."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You'd need to invoice {{ invoice }} a month to take home {{ takeHome }}. Monthly cuota {{ cuota }}, income tax {{ tax }}."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.a_month":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"{{ amount }} a month"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"{{ amount }} a month"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.after_tarifa_plana":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"After 12 months tarifa plana"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"After 12 months tarifa plana"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.approx_a_month":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"approx. {{ amount }} a month"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"approx. {{ amount }} a month"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.been_autonomo_before":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Been autónomo before?"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Been autónomo before?"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.est_income_tax":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Estimated income tax"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Estimated income tax"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.est_monthly_cuota":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Estimated monthly cuota"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Estimated monthly cuota"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.filed_quarterly":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"(Filed quarterly)"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"(Filed quarterly)"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.how_tarifa_plana_works":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"How tarifa plana works"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"How tarifa plana works"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.how_we_estimated_tax":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"How we estimated your tax"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"How we estimated your tax"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.tarifa_plana_reduction":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"(Tarifa plana reduction)"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"(Tarifa plana reduction)"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.toggle":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"What affects your take home"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"What affects your take home"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.breakdown.where_cuota_goes":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Where your cuota goes"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Where your cuota goes"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.cliff.after_tp_invoice":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"After tarifa plana, you'd need to invoice"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"After tarifa plana, you'd need to invoice"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.cliff.save_per_month":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Save \u003cstrong\u003e{{ amount }}\u003c/strong\u003e a month in cuota for your first year"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Save \u003cstrong\u003e{{ amount }}\u003c/strong\u003e a month in cuota for your first year"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.after_tarifa_plana":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"After 12 months tarifa plana"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"After 12 months tarifa plana"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.approx_a_month":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"approx. {{ amount }} a month"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"approx. {{ amount }} a month"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.aria_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Contribution level"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Contribution level"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.cuota_for_year":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Estimated monthly cuota for a year"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Estimated monthly cuota for a year"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.description_balanced":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Reasonable cover without stretching your budget now."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Reasonable cover without stretching your budget now."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.description_more_cover":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Higher cuota. More cover for sick pay, pension and other benefits."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Higher cuota. More cover for sick pay, pension and other benefits."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.description_pay_less":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Lower cuota. Less cover for sick pay, pension and other benefits."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Lower cuota. Less cover for sick pay, pension and other benefits."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.help":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Your cuota goes into Social Security. It covers your pension, sick pay, and parental leave — amongst other things."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Your cuota goes into Social Security. It covers your pension, sick pay, and parental leave — amongst other things."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.option_balanced":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"General cover"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"General cover"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.option_more_cover":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"More cover"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"More cover"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.option_pay_less":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Basic cover"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Basic cover"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.tarifa_plana_tag":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"(Tarifa plana)"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"(Tarifa plana)"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Select your contribution"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Select your contribution"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.contribution.where_cuota_goes":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Where your cuota goes"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Where your cuota goes"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.estimate.add_details":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Add details to see estimate"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Add details to see estimate"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.estimate.cuota_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Cuota {{ amount }}"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Cuota {{ amount }}"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.estimate.excluding_iva":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"excluding IVA."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"excluding IVA."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.estimate.for_first_12_months":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"for your first 12 months."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"for your first 12 months."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.estimate.illustrative_disclaimer":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"This is just an estimate to give you an idea."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"This is just an estimate to give you an idea."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.estimate.take_home_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Take home {{ amount }}"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Take home {{ amount }}"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.estimate.tax_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Tax {{ amount }}"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Tax {{ amount }}"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.estimate.youd_need_to_invoice":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You'd need to invoice"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You'd need to invoice"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.income.field_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monthly take-home target in euros"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monthly take-home target in euros"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.income.help":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Type an exact amount or drag the slider to explore."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Type an exact amount or drag the slider to explore."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.income.slider_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monthly take-home target slider"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monthly take-home target slider"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.income.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"How much do you want to bring home each month?"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"How much do you want to bring home each month?"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.income.validation_range":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Enter an amount between {{ min }} and {{ max }}"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Enter an amount between {{ min }} and {{ max }}"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.close":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Close"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Close"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.how_tarifa_plana.body_1":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Based on your answers, you may qualify for tarifa plana, reducing your cuota to \u003cstrong\u003earound 88,64 € a month\u003c/strong\u003e in your first year. That’s an €80 baseline plus 0,9% MEI on the minimum contribution base."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Based on your answers, you may qualify for tarifa plana, reducing your cuota to \u003cstrong\u003earound 88,64 € a month\u003c/strong\u003e in your first year. That’s an €80 baseline plus 0,9% MEI on the minimum contribution base."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.how_tarifa_plana.body_2":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"To keep it, you'll need to stay registered and keep your Social Security payments up to date."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"To keep it, you'll need to stay registered and keep your Social Security payments up to date."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.how_tarifa_plana.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"How tarifa plana works"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"How tarifa plana works"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.how_tax_estimate.body_1":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"This is an approximate figure to help you plan. Spanish IRPF (Impuesto sobre la Renta de las Personas Físicas) is progressive, and we apply the national rates based on your estimated yearly profit. Everyone gets a tax-free personal allowance around {{ allowance }} a year for a single person with no dependents. We take that off before working out what you owe, which is why an estimate below it can show {{ zero }}."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"This is an approximate figure to help you plan. Spanish IRPF (Impuesto sobre la Renta de las Personas Físicas) is progressive, and we apply the national rates based on your estimated yearly profit. Everyone gets a tax-free personal allowance around {{ allowance }} a year for a single person with no dependents. We take that off before working out what you owe, which is why an estimate below it can show {{ zero }}."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.how_tax_estimate.body_2":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We work from your net profit: what you invoice, minus expenses. We've assumed the standard 7% deduction Hacienda allows without receipts, capped at {{ cap }} a year. If you've got more business expenses to claim (like office rent, tools, professional services, or travel) your real tax bill will be lower than this."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We work from your net profit: what you invoice, minus expenses. We've assumed the standard 7% deduction Hacienda allows without receipts, capped at {{ cap }} a year. If you've got more business expenses to claim (like office rent, tools, professional services, or travel) your real tax bill will be lower than this."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.how_tax_estimate.body_3":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"This is general guidance. For the exact figure, check with your gestor when you file."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"This is general guidance. For the exact figure, check with your gestor when you file."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.how_tax_estimate.body_4":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"This is general guidance. Your gestor will give you the precise figure when you file."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"This is general guidance. Your gestor will give you the precise figure when you file."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.how_tax_estimate.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"How we estimated your tax"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"How we estimated your tax"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.where_cuota_goes.body_1":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We estimated this from your projected income and the contribution level you chose."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We estimated this from your projected income and the contribution level you chose."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.where_cuota_goes.cese_desc":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Unemployment insurance."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Unemployment insurance."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.where_cuota_goes.cese_term":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Cese de actividad (approx. 0,9%)"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Cese de actividad (approx. 0,9%)"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.where_cuota_goes.common_desc":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Includes: Pension, disability pension, temporary disability/sick pay, caregiver leave."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Includes: Pension, disability pension, temporary disability/sick pay, caregiver leave."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.where_cuota_goes.common_term":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Contingencias comunes (approx. 28,3%)"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Contingencias comunes (approx. 28,3%)"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.where_cuota_goes.formacion_term":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Formación profesional (approx. 0,1%)"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Formación profesional (approx. 0,1%)"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.where_cuota_goes.mei_term":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Mecanismo de Equidad Intergeneracional — MEI (approx. 0,9%)"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Mecanismo de Equidad Intergeneracional — MEI (approx. 0,9%)"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.where_cuota_goes.professional_desc":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Workplace accidents and illnesses."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Workplace accidents and illnesses."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.where_cuota_goes.professional_term":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Contingencias profesionales (approx. 1,3%)"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Contingencias profesionales (approx. 1,3%)"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.where_cuota_goes.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Where your cuota goes"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Where your cuota goes"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.why_first_time.body_1":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"New autónomos may qualify for the \u003cstrong\u003etarifa plana\u003c/strong\u003e, which reduces the \u003cstrong\u003ecuota\u003c/strong\u003e payment for the first year."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"New autónomos may qualify for the \u003cstrong\u003etarifa plana\u003c/strong\u003e, which reduces the \u003cstrong\u003ecuota\u003c/strong\u003e payment for the first year."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.why_first_time.body_2":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"\u003cstrong\u003eCuota\u003c/strong\u003e is your monthly autónomo contribution to Social Security. See more information about your cuota in the 'Select your contribution' section below."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"\u003cstrong\u003eCuota\u003c/strong\u003e is your monthly autónomo contribution to Social Security. See more information about your cuota in the 'Select your contribution' section below."},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.modal.why_first_time.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Why we are asking this"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Why we are asking this"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Your autónomo status"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Your autónomo status"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.option_currently":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"I'm currently autónomo, past tarifa plana"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"I'm currently autónomo, past tarifa plana"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.option_currently_in_tp":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"I'm currently autónomo, on tarifa plana"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"I'm currently autónomo, on tarifa plana"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.option_no":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"I'm a first-time autónomo"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"I'm a first-time autónomo"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.option_stopped_over_2y":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"I stopped being autónomo over 2 years ago"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"I stopped being autónomo over 2 years ago"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.option_stopped_within_2y":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"I stopped being autónomo within the last 2 years"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"I stopped being autónomo within the last 2 years"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.short_currently":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Currently autónomo, past tarifa plana"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Currently autónomo, past tarifa plana"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.short_currently_in_tp":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Currently autónomo, on tarifa plana"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Currently autónomo, on tarifa plana"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.short_no":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"No, it's my first time"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"No, it's my first time"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.short_stopped_over_2y":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Yes, over 2 years ago"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Yes, over 2 years ago"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.short_stopped_within_2y":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Yes, in the last 2 years"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Yes, in the last 2 years"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.status.why_asking":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Why we're asking"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Why we're asking"},"source":"TMS"}}},"lib_monzo_com_core.autonomo_calculator.sticky.aria_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"See the full estimate"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"See the full estimate"},"source":"TMS"}}},"lib_monzo_com_core.ecb_rates.currency_selector.ecb_currencies_group":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"European Central Bank currencies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"European Central Bank currencies"},"source":"TMS"}}},"lib_monzo_com_core.ecb_rates.currency_selector.label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Please choose a currency to see our exchange rate."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Please choose a currency to see our exchange rate."},"source":"TMS"}}},"lib_monzo_com_core.ecb_rates.currency_selector.other_currencies_group":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Other currencies"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Other currencies"},"source":"TMS"}}},"lib_monzo_com_core.ecb_rates.loading":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Loading..."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Loading..."},"source":"TMS"}}},"lib_monzo_com_core.ecb_rates.rate_details.date_updated":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Date updated:"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Date updated:"},"source":"TMS"}}},"lib_monzo_com_core.ecb_rates.rate_details.ecb_rate_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"European Central Bank rate"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"European Central Bank rate"},"source":"TMS"}}},"lib_monzo_com_core.ecb_rates.rate_details.mastercard_rate_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Mastercard Rate"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Mastercard Rate"},"source":"TMS"}}},"lib_monzo_com_core.ecb_rates.rate_details.monzo_markup_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monzo mark-up \u003cbr /\u003e over Mastercard rate"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monzo mark-up \u003cbr /\u003e over Mastercard rate"},"source":"TMS"}}},"lib_monzo_com_core.ecb_rates.rate_details.total_markup_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Total mark-up \u003cbr /\u003e over European Central Bank rate"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Total mark-up \u003cbr /\u003e over European Central Bank rate"},"source":"TMS"}}},"lib_monzo_com_core.youtube_video.container_aria_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"YouTube video"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"YouTube video"},"source":"TMS"}}},"lib_monzo_com_core.youtube_video.cookies_dialog.action":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Update preferences"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Update preferences"},"source":"TMS"}}},"lib_monzo_com_core.youtube_video.cookies_dialog.message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"To play this video, we need your consent to use \u003cb\u003eAdvertising\u003c/b\u003e and \u003cb\u003eAnalytics\u003c/b\u003e cookies."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"To play this video, we need your consent to use \u003cb\u003eAdvertising\u003c/b\u003e and \u003cb\u003eAnalytics\u003c/b\u003e cookies."},"source":"TMS"}}},"lib_monzo_com_core.youtube_video.cookies_dialog.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Update cookie preferences"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Update cookie preferences"},"source":"TMS"}}},"lib_monzo_com_core.youtube_video.error_dialog.message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We're working to get things back up. Please reload the page or try again in a little while."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We're working to get things back up. Please reload the page or try again in a little while."},"source":"TMS"}}},"lib_monzo_com_core.youtube_video.error_dialog.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Video is temporarily unavailable"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Video is temporarily unavailable"},"source":"TMS"}}},"lib_monzo_com_core.youtube_video.player_aria_label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"YouTube video. Navigate inside the frame to find the video player then press Space to play."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"YouTube video. Navigate inside the frame to find the video player then press Space to play."},"source":"TMS"}}},"lib_monzo_com_core.youtube_video.player_aria_label_with_title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"YouTube video. Video title: {{ videoName }}. Navigate inside the frame to find the video player then press Space to play."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"YouTube video. Video title: {{ videoName }}. Navigate inside the frame to find the video player then press Space to play."},"source":"TMS"}}},"locale-banner.actions.confirm":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Confirm Selected Country"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Confirm Selected Country"},"source":"TMS"}}},"locale-banner.actions.dismiss":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Dismiss Country Select"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Dismiss Country Select"},"source":"TMS"}}},"locale-banner.aside.aria-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Confirm where you live"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Confirm where you live"},"source":"TMS"}}},"locale-banner.content.message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You're on the \u003cflag\u003e{{flag}}\u003c/flag\u003e \u003cstrong\u003e{{pageRegion}}\u003c/strong\u003e website."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You're on the \u003cflag\u003e{{flag}}\u003c/flag\u003e \u003cstrong\u003e{{pageRegion}}\u003c/strong\u003e website."},"source":"TMS"}}},"locale-banner.form.region-details":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Confirm Selected Country (page will navigate after selecting a country)"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Confirm Selected Country (page will navigate after selecting a country)"},"source":"TMS"}}},"locale-banner.form.region-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Region"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Region"},"source":"TMS"}}},"locale-banner.form.switch-to":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Switch to {{regionName}}"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Switch to {{regionName}}"},"source":"TMS"}}},"locale-button.nav.aria-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Choose a country/region. The current selection is {{regionName}}"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Choose a country/region. The current selection is {{regionName}}"},"source":"TMS"}}},"locale-modal.actions.cancel":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Cancel"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Cancel"},"source":"TMS"}}},"locale-modal.actions.dismiss":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Dismiss Country Select"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Dismiss Country Select"},"source":"TMS"}}},"locale-modal.actions.save":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Save"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Save"},"source":"TMS"}}},"locale-modal.content.description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We offer tailored accounts depending on your country of residence."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We offer tailored accounts depending on your country of residence."},"source":"TMS"}}},"locale-modal.content.heading":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Confirm where you live"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Confirm where you live"},"source":"TMS"}}},"locale-modal.form.language-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Available languages"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Available languages"},"source":"TMS"}}},"locale-modal.form.region-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Region"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Region"},"source":"TMS"}}},"navigation.back-button.text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Back"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Back"},"source":"TMS"}}},"navigation.close-button.aria-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Close navigation"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Close navigation"},"source":"TMS"}}},"navigation.new-pill.text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"New"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"New"},"source":"TMS"}}},"navigation.top-level-item.open-text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Open {{section}} navigation"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Open {{section}} navigation"},"source":"TMS"}}},"navigation.top-level-item.toggle-aria-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Toggle {{section}} navigation menu"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Toggle {{section}} navigation menu"},"source":"TMS"}}},"payment-card-fan.aria-label.card-options":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Card options. Use arrow keys to navigate"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Card options. Use arrow keys to navigate"},"source":"TMS"}}},"payment-card-fan.aria-label.next-card":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"next card"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"next card"},"source":"TMS"}}},"payment-card-fan.aria-label.previous-card":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"previous card"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"previous card"},"source":"TMS"}}},"site-header.logo.analytics-text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monzo Bank Homepage"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monzo Bank Homepage"},"source":"TMS"}}},"site-header.logo.aria-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Monzo Bank Homepage"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Monzo Bank Homepage"},"source":"TMS"}}},"site-header.primary-cta.aria-label":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Open a Monzo account"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Open a Monzo account"},"source":"TMS"}}},"site-header.skip-to-content.analytics-text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Skip to Content"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Skip to Content"},"source":"TMS"}}},"site-header.skip-to-content.text":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Skip to Content"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Skip to Content"},"source":"TMS"}}},"unsubscribe.error.invalid-params.description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We're very sorry, but something went wrong and we weren't able to unsubscribe you from our emails."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We're very sorry, but something went wrong and we weren't able to unsubscribe you from our emails."},"source":"TMS"}}},"unsubscribe.error.invalid-params.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"It didn't work!"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"It didn't work!"},"source":"TMS"}}},"unsubscribe.error.support-message":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Please get in touch with support and we'll help you out. You can reach us at \u003cemail_link\u003ehelp@monzo.com\u003c/email_link\u003e."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Please get in touch with support and we'll help you out. You can reach us at \u003cemail_link\u003ehelp@monzo.com\u003c/email_link\u003e."},"source":"TMS"}}},"unsubscribe.legacy-link.description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"To update your email preferences, open the Monzo app and go to your settings, or select 'unsubscribe' on a more recent email from us."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"To update your email preferences, open the Monzo app and go to your settings, or select 'unsubscribe' on a more recent email from us."},"source":"TMS"}}},"unsubscribe.legacy-link.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"This link's no longer active"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"This link's no longer active"},"source":"TMS"}}},"unsubscribe.loading.description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We're unsubscribing you right now..."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We're unsubscribing you right now..."},"source":"TMS"}}},"unsubscribe.loading.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Unsubscribing"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Unsubscribing"},"source":"TMS"}}},"unsubscribe.page.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"Unsubscribe"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"Unsubscribe"},"source":"TMS"}}},"unsubscribe.success.description":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"We've unsubscribed you. We'll stop sending you emails, except for specific service messages related to your account."},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"We've unsubscribed you. We'll stop sending you emails, except for specific service messages related to your account."},"source":"TMS"}}},"unsubscribe.success.title":{"localized_messages":{"en-GB":{"type":"SIMPLE","simple":{"content":"You're unsubscribed!"},"source":"TMS"},"en-US":{"type":"SIMPLE","simple":{"content":"You're unsubscribed!"},"source":"TMS"}}}},"featureGates":{"ca_daxenabled":true}},"__N_SSP":true},"page":"/blog/[...dynamic]","query":{"dynamic":["2019","09","08","why-monzo-wasnt-working-on-july-29th"]},"buildId":"-IOrrmBQcEdnuWfJPIoxS","assetPrefix":"https://static-assets.monzo.com/monzo-com/a0e2d265d520a8340bc3e5250a208b6a3241e736","runtimeConfig":{"apiFqdn":"internal-api.monzo.com","publicApiFqdn":"api.monzo.com","publicClientId":"oauth2client_0000ATbSRBo8E4Es6Ss3k6","publicClientSecret":"mnzpub.eQUHgQ9y9tbER/x0k0LRW9KOoVkOnb4dMwCxLQxC8AoLPwGdDXlQ7EODWlgmgq+r9j+vCurgzX1Ya0m7uVCTMQ==","test_apiFqdn":"api.s101.nonprod-ffs.io","sentryProject":"monzo-com-web","sentryOrg":"monzo","sentryDSN":"https://06894583d63658ed47fe4e9943f497fa@o23827.ingest.sentry.io/4505743602483200","environment":"production","cookieDomain":".monzo.com","localeCookieDomain":".monzo.com","authRedirectOrigin":"https://auth.monzo.com/","gitCommit":"a0e2d265d520a8340bc3e5250a208b6a3241e736"},"isFallback":false,"isExperimentalCompile":false,"gssp":true,"appGip":true,"locale":"gb","locales":["gb","us","ie","en-be","en-bg","en-cy","en-cz","en-dk","en-ee","en-es","es","en-fi","en-fr","en-hr","en-hu","en-is","en-it","en-li","en-lt","en-lv","en-mt","en-nl","en-pl","en-pt","en-ro","en-se","en-si","en-sk"],"defaultLocale":"gb","scriptLoader":[]}</script></body><script src="https://internal-api.monzo.com/static/util.js" nonce="ab7ae6ccf95b98373b8cd153fb3123e6d9d0"></script></html></body></html>