{"year":2026,"generatedAt":"2026-09-18T13:45:18.166Z","period":{"from":"2026-01-01","to":"2026-09-18T13:45:18.166Z"},"sources":{"cities":{"query":"Chapter.find({ active: true }) — every live chapter, projected to slug, name, canonicalCity, country, timezone, foundedYear, population, createdAt and coordinates. Continents come from the country table in app/lib/chapter-country.ts; a country that table does not know is left out of the continent tally rather than guessed. The widest pair is a great-circle distance over the stored coordinates, and the founding years use the same fallback as the map: a chapter with no recorded year is dated by the earlier of the year its city page went live and the year of its first published event (Event.aggregate, $min date per citySlug, no period window). Population is hand-maintained and mostly absent, so it is published with the count of cities that carry a figure.","computedAt":"2026-09-18T13:45:18.166Z"},"meetups":{"query":"Event.find({ status: \"published\", unlisted: { $ne: true }, date: { $gte: from, $lt: to } }) — every publicly visible event of the period, partner events included (no filter on `kind`). Per-city counts below the publication floor are withheld, and the events that name no city of ours at all are published as their own figure so the rows cannot be read as adding up to the total. The same set carries the shape figures: `eventType` through normalizeEventType (so a retired id lands in the format that absorbed it) with an explicit \"not recorded\" bucket; `time` read as the local wall clock the organiser typed, unparseable or missing times counted separately; the weekday resolved in each city own zone (resolveChapterTimezone over the chapter slug and country) because `date` is a UTC instant; and the closed enums counted with their defaults applied — absent attendanceMode as offline, absent isPaid as free, absent spokenLanguage as English, absent kind as a community event. Multi-day means an endDate is present.","computedAt":"2026-09-18T13:45:18.166Z"},"photos":{"query":"EventPhoto.find({ status: { $ne: \"pending\" }, eventId: { $in: <public event ids of the period> } }) — reviewed photos of publicly visible events only. No uploader field is read.","computedAt":"2026-09-18T13:45:18.166Z"},"library":{"query":"NewsItem.find({ status: \"published\", createdAt: { $gte: from, $lt: to } }) — papers added to the library in the period; the figures count only those carrying an evidence grade. `createdAt` is the day the paper was INGESTED and is editable by an editor, so it dates our reading rather than the research. The shape figures each carry their own denominator because almost none of them is \"of the graded papers\": interventions are read through the evidence-map tables over tags and MeSH, and MeSH is absent on every manually added paper; study design comes from PubMed publication types, which a manual paper has none of; a duration in weeks is stated by a handful of papers. Registrations are reduced to the REGISTRY NAME, the free-text grade reasons to a yes/no — the report counts them, it never quotes them. Retraction and concern notices are counted by the day the re-check cron saw them, and only on papers ingested inside the period. The evidence map is the one figure that is not of the period: NewsItem.find({ status: \"published\" }) projected to slug, title, tags, mesh, meshMajor and grade is run through the same buildMatrix the /evidence page uses, because a question is open or it is not and last year's paper still answers it.","computedAt":"2026-09-18T13:45:18.166Z"},"words":{"query":"Article.countDocuments({ status: \"published\", publishedAt: { $gte: from, $lt: to } }), the same count again with a German body present, and Article.find(...).select(\"citations.paperSlug\") for the sidenote citations — the citation ARRAY is projected to its paper slug alone, so no author, reviewer or e-mail field is read. Glossary terms and their categories come from the static encyclopedia index. ScheduledNewsletter.find({ status: \"sent\", sentAt: { $gte: from, $lt: to } }) is reduced to per-issue item counts plus the free-text tags of its research items; a tag is trimmed and lower-cased, counted once per ISSUE rather than once per study, so a study-heavy issue cannot pass for a theme of the year. German coverage of the library counts a paper as translated only when both its title and its summary carry German. Guides are deliberately absent: the guide hub is static locale content with no publication date, and the Guide collection holds no documents at all, so no guide can honestly be dated into a period.","computedAt":"2026-09-18T13:45:18.166Z"},"tools":{"query":"One FirstPartyHit aggregation, $group by path over { path: { $in: <the tool pages> }, isBot: { $ne: true } }, served by the existing { createdAt: -1, path: 1 } index. What is published is the ORDER alone: the tools ranked by how often their pages were opened, busiest first. No count leaves the collector — not the total, not the per-tool figure, not a device or language split, and no face-scan consent receipts are read at all. Both language pages of a tool are folded onto the tool before the ranking, because a reader who opened the German grip-strength page opened the grip-strength tool. Bots are left out. The page list is built from TOOL_CATALOG, the same catalogue /llms.json publishes, in both languages, so the three tools that do not live under /tools/ (the age test, the menopause test, the pseudoscience checker) are ranked too. Exact paths only: a tool's sub-pages (a grip-strength answer page, a methodology page) are content, not the tool. FirstPartyHit carries no identifier of any kind by design. The Longevity Check is the one tool that runs in a room, and the one place this chapter still publishes counts: EventTestResult.find({ completedAt: { $gte: from, $lt: to } }).select(\"completedAt sessionId results.testId skippedTests verificationStatus\") counts PARTICIPATION only — how many people finished a check, at how many sessions, in how many cities (EventTestSession.chapterId), at which stations, and how the result was obtained. No score, no percentile, no age, no gender and no body weight is projected; a result carries no publication consent, so nothing that measures a body is published. A station attempted by fewer than twenty people is dropped rather than shown, and the session-local custom stations an organiser invents are never counted as ours.","computedAt":"2026-09-18T13:45:18.166Z"},"people":{"query":"User.countDocuments({ $or: [{ createdAt: { $lt: from } }, { createdAt: { $exists: false } }] }) for the members who were already here — an account that carries no creation date at all is counted as pre-existing rather than dropped, because an account with no date predates the field. User.find({ createdAt: { $gte: from, $lt: to } }).select(\"createdAt onboardingGoals onboardingMeetPrefs onboardingCompletedAt onboardingSkipped\") for the ones who joined — five fields, none of them a name, an e-mail or a city. A deleted account is REMOVED from the collection by the purge job rather than flagged, so this counts the accounts that still exist. Goals are the onboarding GOAL taxonomy, never the `interests` they are mapped onto: one goal derives up to three interests, so counting interests would let one answer vote three times. Both goal figures carry their denominator, because most members never reach that step. \"Open to dating\" is only published from ten members up. Members per city is a COUNT per chapter — User.countDocuments({ createdAt: { $gte: from, $lt: to }, \"location.city\": { $in: [canonicalCity, name.en, name.de] } }) with an { locale: \"en\", strength: 2 } collation, the same matcher the city pages use — over the SELF-REPORTED city in a profile, and WINDOWED to the members who joined in the period, so the rows and the \"joined this year\" figure count the same people; a city below the publication floor is withheld. Members whose profile names a city none of our chapters answers to are the difference between the two, published as its own figure rather than left to the rows to imply. Coffee chats come from CoffeeRoundSummary.find({ ranAt: { $gte: from, $lt: to } }), the matcher's own per-round counters, a collection that holds no reference to any member by construction. PushSubscription.find({ createdAt: … }).select(\"createdAt lang\") is published only from two registrations up, because one device is one person. NewsletterConsent.find({ confirmedAt: … }).select(\"confirmedAt source\") counts confirmed e-mail consents — the e-mail address itself is never projected, and the source is published with the total because nearly all of these are the face-age gate rather than a newsletter sign-up.","computedAt":"2026-09-18T13:45:18.166Z"},"habits":{"query":"CommunityChallenge.find({ visibility: \"group\", $or: [{ createdAt }, { podQuorumReachedAt }, { podStartConfirmedAt }, { podEndedEarlyAt }] in the period }) — every step counted by the date it happened. A pod waiting in its lobby has no startsAt at all, so the funnel is anchored on createdAt and each later step on its own timestamp. Round lengths and settled weeks are read off the pods formed in the period; a round-length bucket with fewer than two pods is withheld. PartnerRequest is read the same way, $or over createdAt, startedAt, completedAt and bothCompletedCreditedAt, projected to those dates plus category, duration, frequency and status — the free-text goal a member typed is not projected and has nowhere to land, and neither is any id. A category or a length chosen by fewer than two people is withheld. Partner check-ins come from CheckIn.find({ checkedInAt: { $gte: from, $lt: to } }) — one-to-one habit partnerships, projected to the timestamp alone. Badges are UserAchievement.find({ firstEarnedAt: { $gte: from, $lt: to } }).select(\"firstEarnedAt achievementId backfilled\") joined here to Achievement.rarity; they are counted by rarity and by month, never per badge and never per holder, and the count of retroactively backfilled awards is published beside them because a backfilled badge is dated by the backfill run rather than by the day the member did the thing. The feed is counts only: Post by type, the replies inside those posts by their own timestamp, FeedLike and FeedComment by targetType, and Heart as a count and its months — never a pair, never a direction. Four collections are deliberately NOT read: ArticleLike, ProductLike, RecipeLike, XPActivity and Cheer all carry a 365-day TTL index, so counting them would publish a number that shrinks as the year ages. CheckIn, CoffeeRoundSummary, Heart and Stamp are never expired and are safe to count.","computedAt":"2026-09-18T13:45:18.166Z"},"stack":{"query":"HealthStack.aggregate over { status: \"active\" } with the opted-out owners excluded on the leading $match — getHiddenStackUserIdsStrict() resolves the members who switched their stack off or whose profile is private, the same set the public popular-items sidebar excludes, and the pipeline $nin-s them before it groups; unlike the cached accessor that sidebar uses, this one fails CLOSED, so a failed resolve aborts the build instead of publishing an opted-out member. Every figure counts DISTINCT MEMBERS: the database groups by userId and normalizedName first, so an item a member listed twice is one member, and only { key, members } leaves the aggregation — no member reference exists downstream to lose. Nothing below twenty distinct members is published, and a bucket below the floor is dropped rather than shown as a dash: naming a supplement is itself the disclosure. There is no city, age or gender split anywhere in this chapter, so no two figures of it can be crossed. Item labels come from CuratedItem.find({ normalizedName: { $in: <the named items> } }).select(\"normalizedName name\"), the bilingual catalogue; an item outside the catalogue keeps the display name as stored, which at twenty members up is a common noun. Growth counts member-and-item pairs first created inside the period, by month, and carries no name and no place. Schedule fields (time of day, weekdays) are optional and too thinly filled to publish, so no schedule figure exists. Biological measurements come from User.profile.bioMetrics with isPublic: true, counted by TYPE and never by value; the four rPPG face-scan types are not read at all rather than trusted to a flag, and the self-reported biological-age delta is published as one median from twenty members up. Everything here is self-reported by the member.","computedAt":"2026-09-18T13:45:18.166Z"},"organisers":{"query":"ChapterLead.find({ active: true, status: { $ne: \"alumni\" } }) reduced to a per-person count of active chapters. Counts only — no person-level field survives into the figure.","computedAt":"2026-09-18T13:45:18.166Z"},"places":{"query":"Spot.find({ status: \"approved\" }) — the published map, projected to the category alone. No submitter, no votes, no billing field is read. Category shares are of the approved places that carry a category. There is no per-city breakdown: the chapter on a place is a proximity assignment that hardly any approved place carries, so ranked city rows would say which rows are filled in rather than where the places are.","computedAt":"2026-09-18T13:45:18.166Z"},"map":{"query":"Spot.countDocuments({ status: \"approved\" }) — the published map.","computedAt":"2026-09-18T13:45:18.166Z"}},"cities":{"total":39,"countries":16,"foundedThisYear":33,"byFoundedMonth":[2,3,1,4,0,8,6,8,1,0,0,0],"dots":[{"slug":"munich","name":{"en":"Munich","de":"München"},"lat":48.1351,"lng":11.582,"foundedYear":2023,"foundedThisYear":false,"extreme":null},{"slug":"berlin","name":{"en":"Berlin","de":"Berlin"},"lat":52.52,"lng":13.405,"foundedYear":2025,"foundedThisYear":false,"extreme":null},{"slug":"nuremberg","name":{"en":"Nuremberg","de":"Nürnberg"},"lat":49.4543,"lng":11.0746,"foundedYear":2025,"foundedThisYear":false,"extreme":null},{"slug":"hamburg","name":{"en":"Hamburg","de":"Hamburg"},"lat":53.5488,"lng":9.9872,"foundedYear":2025,"foundedThisYear":false,"extreme":"north"},{"slug":"cologne","name":{"en":"Cologne","de":"Köln"},"lat":50.9375,"lng":6.9603,"foundedYear":2025,"foundedThisYear":false,"extreme":null},{"slug":"frankfurt","name":{"en":"Frankfurt","de":"Frankfurt"},"lat":50.1109,"lng":8.6821,"foundedYear":2025,"foundedThisYear":false,"extreme":null},{"slug":"san-francisco","name":{"en":"San Francisco","de":"San Francisco"},"lat":37.7749,"lng":-122.4194,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"heidelberg","name":{"en":"Heidelberg","de":"Heidelberg"},"lat":49.3988,"lng":8.6724,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"miami","name":{"en":"Miami","de":"Miami"},"lat":25.7617,"lng":-80.1918,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"shenzhen","name":{"en":"Shenzhen","de":"Shenzhen"},"lat":22.5435,"lng":114.11,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"zurich","name":{"en":"Zurich","de":"Zürich"},"lat":47.3769,"lng":8.5417,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"vienna","name":{"en":"Vienna","de":"Wien"},"lat":48.2081,"lng":16.3713,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"brunswick","name":{"en":"Brunswick","de":"Braunschweig"},"lat":52.2678,"lng":10.5246,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"mainz","name":{"en":"Mainz","de":"Mainz"},"lat":49.9929,"lng":8.2473,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"bodensee","name":{"en":"Bodensee","de":"Bodensee"},"lat":47.678,"lng":9.1737,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"stuttgart","name":{"en":"Stuttgart","de":"Stuttgart"},"lat":48.7758,"lng":9.1829,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"duesseldorf","name":{"en":"Düsseldorf","de":"Düsseldorf"},"lat":51.223,"lng":6.7825,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"london","name":{"en":"London","de":"London"},"lat":51.5074,"lng":-0.1276,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"valencia","name":{"en":"Valencia","de":"Valencia"},"lat":39.4738,"lng":-0.3756,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"barcelona","name":{"en":"Barcelona","de":"Barcelona"},"lat":41.3874,"lng":2.1686,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"new-york","name":{"en":"New York","de":"New York"},"lat":40.7128,"lng":-74.006,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"riyadh","name":{"en":"Riyadh","de":"Riad"},"lat":24.774265,"lng":46.738586,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"paris","name":{"en":"Paris","de":"Paris"},"lat":48.8575,"lng":2.3514,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"shanghai","name":{"en":"Shanghai","de":"Shanghai"},"lat":31.2304,"lng":121.4737,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"los-angeles","name":{"en":"Los Angeles","de":"Los Angeles"},"lat":34.052235,"lng":-118.243683,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"austin","name":{"en":"Austin","de":"Austin"},"lat":30.267118,"lng":-97.74313,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"houston","name":{"en":"Houston","de":"Houston"},"lat":29.7604,"lng":-95.3698,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"boston","name":{"en":"Boston","de":"Boston"},"lat":42.361145,"lng":-71.057083,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"zagreb","name":{"en":"Zagreb","de":"Zagreb"},"lat":45.815399,"lng":15.966568,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"geneva","name":{"en":"Geneva","de":"Genf"},"lat":46.20167,"lng":6.14694,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"vancouver","name":{"en":"Vancouver","de":"Vancouver"},"lat":49.2827,"lng":-123.1207,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"baden-baden","name":{"en":"Baden-Baden","de":"Baden-Baden"},"lat":48.7644,"lng":8.2403,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"essen","name":{"en":"Essen","de":"Essen"},"lat":51.4556,"lng":7.0116,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"seattle","name":{"en":"Seattle","de":"Seattle"},"lat":47.6062,"lng":-122.3321,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"tokyo","name":{"en":"Tokyo","de":"Tokyo"},"lat":35.6762,"lng":139.6503,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"dublin","name":{"en":"Dublin","de":"Dublin"},"lat":53.3498,"lng":-6.2603,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"krakow","name":{"en":"Krakow","de":"Krakow"},"lat":50.0647,"lng":19.945,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"liechtenstein","name":{"en":"Liechtenstein","de":"Liechtenstein"},"lat":47.166,"lng":9.5554,"foundedYear":2026,"foundedThisYear":true,"extreme":null},{"slug":"bangkok","name":{"en":"Bangkok","de":"Bangkok"},"lat":13.7563,"lng":100.5018,"foundedYear":2026,"foundedThisYear":true,"extreme":"south"}],"continents":[{"code":"EU","cities":25},{"code":"NA","cities":9},{"code":"AS","cities":4}],"span":{"km":15620,"from":{"slug":"miami","name":{"en":"Miami","de":"Miami"}},"to":{"slug":"bangkok","name":{"en":"Bangkok","de":"Bangkok"}}},"northernmost":{"slug":"hamburg","name":{"en":"Hamburg","de":"Hamburg"}},"southernmost":{"slug":"bangkok","name":{"en":"Bangkok","de":"Bangkok"}},"oldestFoundedYear":2023,"medianFoundedYear":2026,"population":{"cities":39,"withFigure":0,"people":null}},"meetups":{"total":143,"byMonth":[6,4,11,11,18,17,29,30,17,0,0,0],"byCity":[{"slug":"munich","name":{"en":"Munich","de":"München"},"events":28},{"slug":"berlin","name":{"en":"Berlin","de":"Berlin"},"events":18},{"slug":"hamburg","name":{"en":"Hamburg","de":"Hamburg"},"events":11},{"slug":"shanghai","name":{"en":"Shanghai","de":"Shanghai"},"events":10},{"slug":"zurich","name":{"en":"Zurich","de":"Zürich"},"events":9},{"slug":"cologne","name":{"en":"Cologne","de":"Köln"},"events":8},{"slug":"frankfurt","name":{"en":"Frankfurt","de":"Frankfurt"},"events":6},{"slug":"san-francisco","name":{"en":"San Francisco","de":"San Francisco"},"events":6},{"slug":"shenzhen","name":{"en":"Shenzhen","de":"Shenzhen"},"events":5},{"slug":"mainz","name":{"en":"Mainz","de":"Mainz"},"events":4},{"slug":"miami","name":{"en":"Miami","de":"Miami"},"events":4},{"slug":"new-york","name":{"en":"New York","de":"New York"},"events":4},{"slug":"nuremberg","name":{"en":"Nuremberg","de":"Nürnberg"},"events":4},{"slug":"austin","name":{"en":"Austin","de":"Austin"},"events":3},{"slug":"heidelberg","name":{"en":"Heidelberg","de":"Heidelberg"},"events":3},{"slug":"riyadh","name":{"en":"Riyadh","de":"Riad"},"events":3},{"slug":"vienna","name":{"en":"Vienna","de":"Wien"},"events":3},{"slug":"london","name":{"en":"London","de":"London"},"events":2},{"slug":"los-angeles","name":{"en":"Los Angeles","de":"Los Angeles"},"events":2},{"slug":"valencia","name":{"en":"Valencia","de":"Valencia"},"events":2},{"slug":"barcelona","name":{"en":"Barcelona","de":"Barcelona"},"events":1},{"slug":"bodensee","name":{"en":"Bodensee","de":"Bodensee"},"events":1},{"slug":"boston","name":{"en":"Boston","de":"Boston"},"events":1},{"slug":"houston","name":{"en":"Houston","de":"Houston"},"events":1},{"slug":"paris","name":{"en":"Paris","de":"Paris"},"events":1},{"slug":"zagreb","name":{"en":"Zagreb","de":"Zagreb"},"events":1}],"cityNotRecorded":2,"byType":[{"type":"social","count":23},{"type":"talk","count":19},{"type":"run","count":14},{"type":"dinner","count":14},{"type":"notRecorded","count":14},{"type":"walk","count":12},{"type":"yoga","count":12},{"type":"hike","count":11},{"type":"workshop","count":8},{"type":"sports","count":7},{"type":"cold","count":4},{"type":"summit","count":2},{"type":"ride","count":1},{"type":"screening","count":1},{"type":"other","count":1}],"byHour":[0,0,0,0,0,1,0,0,4,18,32,3,1,2,7,1,2,16,40,9,4,0,1,0],"noTime":2,"peakTime":"18:30","byWeekday":[2,12,17,11,22,47,32],"mix":{"attendance":{"offline":141,"online":2,"mixed":0},"pricing":{"free":143,"paid":0},"languages":[{"code":"en","count":142},{"code":"de","count":1}],"kind":{"community":143,"partner":0},"multiDay":0}},"places":{"approved":4914,"categorised":4914,"byCategory":[{"category":"wellness","count":1862},{"category":"restaurants","count":1672},{"category":"fitness","count":644},{"category":"labs","count":622},{"category":"doctors","count":114}]},"photos":{"approved":1004,"events":56,"byMonth":[127,0,0,48,340,59,150,210,70,0,0,0],"mosaic":[{"url":"/img/uploads/event-photos/2026/09/9435b10f-f2da-4e1c-abe6-97787934df35.jpg","width":3000,"height":2250,"citySlug":"munich","cityName":{"en":"Munich","de":"München"},"eventSlug":"hike-to-tegernsee-nymphenruns-x-longevity-munich","eventDate":"2026-09-13"},{"url":"/img/uploads/event-photos/2026/09/0f6bf021-646e-4431-9949-2daad504e1c2.jpg","width":3000,"height":2000,"citySlug":"shanghai","cityName":{"en":"Shanghai","de":"Shanghai"},"eventSlug":"taichi-rave","eventDate":"2026-08-29"},{"url":"/img/uploads/event-photos/2026/09/42657584-9228-436d-a04c-f9796bd576c1.jpg","width":1280,"height":1920,"citySlug":"shanghai","cityName":{"en":"Shanghai","de":"Shanghai"},"eventSlug":"taichi-rave","eventDate":"2026-08-29"},{"url":"/img/uploads/event-photos/2026/08/0f8762f2-3922-445d-92e3-643a8aad7cee.jpg","width":1920,"height":1280,"citySlug":"shenzhen","cityName":{"en":"Shenzhen","de":"Shenzhen"},"eventSlug":"how-vagus-nerve-regulation-supports-longevity-a-five-pillar-perspective","eventDate":"2026-08-28"},{"url":"/img/uploads/event-photos/2026/08/bcdbb7ae-c9b2-47a0-9977-bb8d263f626c.jpg","width":768,"height":1024,"citySlug":"san-francisco","cityName":{"en":"San Francisco","de":"San Francisco"},"eventSlug":"donate-blood-get-data-blood-drive","eventDate":"2026-08-26"},{"url":"/img/uploads/event-photos/2026/08/1e649497-df1e-462e-b82f-58a4893e7707.jpg","width":3000,"height":2000,"citySlug":"munich","cityName":{"en":"Munich","de":"München"},"eventSlug":"munich-s-pretzel-run-2026","eventDate":"2026-08-23"},{"url":"/img/uploads/event-photos/2026/08/83a0ab4e-60f1-438e-8c6b-56d7e4d6831b.jpg","width":2250,"height":3000,"citySlug":"shanghai","cityName":{"en":"Shanghai","de":"Shanghai"},"eventSlug":"night-run-chill","eventDate":"2026-08-08"},{"url":"/img/uploads/event-photos/2026/06/0c4beda5-098c-4cda-a4de-4481311b3461.jpg","width":1333,"height":2000,"citySlug":"berlin","cityName":{"en":"Berlin","de":"Berlin"},"eventSlug":"the-capacity-protocol-longevity-run","eventDate":"2026-05-31"},{"url":"/img/uploads/event-photos/2026/06/b4ef298d-31b2-4f2c-865e-d8911eda9ed7.jpg","width":1333,"height":2000,"citySlug":"berlin","cityName":{"en":"Berlin","de":"Berlin"},"eventSlug":"the-capacity-protocol-longevity-run","eventDate":"2026-05-31"},{"url":"/img/uploads/event-photos/2026/06/c29a088f-2f8d-428b-be7f-aa67cf83233e.jpg","width":1333,"height":2000,"citySlug":"berlin","cityName":{"en":"Berlin","de":"Berlin"},"eventSlug":"the-capacity-protocol-longevity-run","eventDate":"2026-05-31"},{"url":"/img/uploads/event-photos/2026/06/cbe6b2d8-bfd6-4861-b515-69d7a1e9e303.jpg","width":3000,"height":2250,"citySlug":"munich","cityName":{"en":"Munich","de":"München"},"eventSlug":"4-5m-to-fight-aging-you-th-app-founders-in-munich","eventDate":"2026-04-23"},{"url":"/img/uploads/event-photos/2026/06/624ddd49-3e17-481e-9c17-225b907b0ca4.jpg","width":3000,"height":2000,"citySlug":"hamburg","cityName":{"en":"Hamburg","de":"Hamburg"},"eventSlug":"code-to-cure","eventDate":"2026-01-29"},{"url":"/img/uploads/event-photos/2026/06/423f0f48-da05-4c9d-91a8-203153a37851.jpg","width":2000,"height":3000,"citySlug":"hamburg","cityName":{"en":"Hamburg","de":"Hamburg"},"eventSlug":"code-to-cure","eventDate":"2026-01-29"},{"url":"/img/uploads/event-photos/2026/06/8f498122-3bde-4cf6-ad38-fbcd69741281.jpg","width":3000,"height":1999,"citySlug":"hamburg","cityName":{"en":"Hamburg","de":"Hamburg"},"eventSlug":"code-to-cure","eventDate":"2026-01-29"},{"url":"/img/uploads/event-photos/2026/09/bebd514b-a9c9-49d2-9f3b-6054b87b61e9.jpg","width":2250,"height":3000,"citySlug":"barcelona","cityName":{"en":"Barcelona","de":"Barcelona"},"eventSlug":"walk-talk-3","eventDate":"2026-09-12"},{"url":"/img/uploads/event-photos/2026/09/b7c905d0-35ee-42be-8fc1-c4e2283cab20.jpg","width":2250,"height":3000,"citySlug":"barcelona","cityName":{"en":"Barcelona","de":"Barcelona"},"eventSlug":"walk-talk-3","eventDate":"2026-09-12"},{"url":"/img/uploads/event-photos/2026/09/f697c144-6052-4152-a3eb-aef57dceab12.jpg","width":2250,"height":3000,"citySlug":"barcelona","cityName":{"en":"Barcelona","de":"Barcelona"},"eventSlug":"walk-talk-3","eventDate":"2026-09-12"},{"url":"/img/uploads/event-photos/2026/09/52d0930e-6602-461d-a0c1-9f153c72cdf5.jpg","width":2250,"height":3000,"citySlug":"valencia","cityName":{"en":"Valencia","de":"Valencia"},"eventSlug":"ride-refresh","eventDate":"2026-09-10"},{"url":"/img/uploads/event-photos/2026/09/f7974a02-d3fc-4c6a-a1cf-7c5302c28f20.jpg","width":2250,"height":3000,"citySlug":"valencia","cityName":{"en":"Valencia","de":"Valencia"},"eventSlug":"ride-refresh","eventDate":"2026-09-10"},{"url":"/img/uploads/event-photos/2026/09/29ce2bc7-9057-4e50-899f-cf0e5957d3be.jpg","width":1530,"height":2040,"citySlug":"valencia","cityName":{"en":"Valencia","de":"Valencia"},"eventSlug":"ride-refresh","eventDate":"2026-09-10"},{"url":"/img/uploads/event-photos/2026/09/f93fcee3-3123-44dc-afc1-4550ffc94312.jpg","width":2250,"height":3000,"citySlug":"san-francisco","cityName":{"en":"San Francisco","de":"San Francisco"},"eventSlug":"longevity-posture","eventDate":"2026-09-03"},{"url":"/img/uploads/event-photos/2026/09/5a0a507d-fe09-4e8d-98aa-4711292f5db7.jpg","width":3000,"height":2649,"citySlug":"san-francisco","cityName":{"en":"San Francisco","de":"San Francisco"},"eventSlug":"longevity-posture","eventDate":"2026-09-03"},{"url":"/img/uploads/event-photos/2026/09/d1d76ca0-71ec-4a7b-a707-91dc23d316f9.jpg","width":2048,"height":1536,"citySlug":"zurich","cityName":{"en":"Zurich","de":"Zürich"},"eventSlug":"longevity-zurich-summer-challenge-with-balboa-move","eventDate":"2026-08-30"},{"url":"/img/uploads/event-photos/2026/09/39018b5d-2e26-47b4-90bd-c68d9726ecb2.jpg","width":2048,"height":1536,"citySlug":"zurich","cityName":{"en":"Zurich","de":"Zürich"},"eventSlug":"longevity-zurich-summer-challenge-with-balboa-move","eventDate":"2026-08-30"}]},"library":{"graded":271,"byMonth":[0,0,25,31,40,44,52,51,28,0,0,0],"byGrade":[{"grade":"Strong","count":39,"medianPubYear":2026},{"grade":"Moderate","count":138,"medianPubYear":2026},{"grade":"Preliminary","count":94,"medianPubYear":2026}],"interventions":[{"slug":"exercise","count":69},{"slug":"nad-precursors","count":18},{"slug":"vitamin-d","count":16},{"slug":"omega-3","count":9},{"slug":"curcumin","count":8},{"slug":"caloric-restriction","count":7},{"slug":"glp-1","count":6},{"slug":"vitamin-c","count":5},{"slug":"creatine","count":4},{"slug":"probiotics","count":4},{"slug":"mediterranean-diet","count":3},{"slug":"protein","count":3},{"slug":"sleep","count":3},{"slug":"fasting","count":2}],"interventionsMapped":144,"designs":[{"design":"other","count":161},{"design":"review","count":44},{"design":"synthesis","count":15},{"design":"rct","count":7}],"designsTyped":227,"evidenceMap":{"cellsTotal":98,"cellsFilled":39},"retractions":{"retracted":0,"concerns":0},"registered":{"papers":10,"byRegistry":[{"registry":"ClinicalTrials.gov","papers":10}]},"openAccess":182,"duration":{"papers":0,"medianWeeks":null,"maxWeeks":null},"journals":{"distinct":149,"top":[{"name":"The journals of gerontology. Series A, Biological sciences and medical sciences","papers":11},{"name":"Ageing research reviews","papers":10},{"name":"Aging cell","papers":10},{"name":"GeroScience","papers":9},{"name":"Frontiers in nutrition","papers":8}]},"rationale":{"english":271,"german":271}},"words":{"articles":27,"glossaryTerms":657,"newsletters":[{"sentAt":"2026-05-05T18:30:06.870Z","articles":1,"studies":3,"events":0,"topTag":"aging clocks"},{"sentAt":"2026-05-12T15:50:05.164Z","articles":1,"studies":3,"events":7,"topTag":"cellular senescence"},{"sentAt":"2026-05-20T14:43:38.481Z","articles":1,"studies":3,"events":9,"topTag":"aging"},{"sentAt":"2026-05-29T23:34:37.629Z","articles":1,"studies":1,"events":1,"topTag":"aging biomarkers"},{"sentAt":"2026-05-30T07:33:23.616Z","articles":1,"studies":1,"events":1,"topTag":"aging clocks"},{"sentAt":"2026-05-30T07:43:11.909Z","articles":1,"studies":1,"events":1,"topTag":"aging clocks"},{"sentAt":"2026-06-10T11:30:06.576Z","articles":1,"studies":4,"events":14,"topTag":"bone health"},{"sentAt":"2026-06-19T04:55:42.003Z","articles":1,"studies":4,"events":12,"topTag":"antioxidants"},{"sentAt":"2026-06-25T20:55:52.033Z","articles":1,"studies":4,"events":11,"topTag":"exercise"},{"sentAt":"2026-07-08T09:15:14.268Z","articles":0,"studies":5,"events":15,"topTag":"aging"},{"sentAt":"2026-07-18T13:10:24.212Z","articles":1,"studies":4,"events":24,"topTag":"bone marrow"},{"sentAt":"2026-07-30T05:30:16.209Z","articles":1,"studies":5,"events":19,"topTag":"longevity"},{"sentAt":"2026-08-06T14:38:03.659Z","articles":1,"studies":4,"events":18,"topTag":"brain health"},{"sentAt":"2026-08-11T01:18:14.665Z","articles":1,"studies":4,"events":15,"topTag":"aging biomarkers"},{"sentAt":"2026-08-20T08:26:37.887Z","articles":1,"studies":3,"events":15,"topTag":"brain health"},{"sentAt":"2026-08-26T22:20:05.706Z","articles":1,"studies":4,"events":26,"topTag":"exercise"},{"sentAt":"2026-09-02T23:54:24.266Z","articles":1,"studies":4,"events":23,"topTag":"brain health"},{"sentAt":"2026-09-16T22:21:22.298Z","articles":1,"studies":3,"events":24,"topTag":"longevity drugs"}],"topics":{"issues":18,"tags":[{"tag":"brain health","issues":8},{"tag":"exercise","issues":6},{"tag":"biomarkers","issues":5},{"tag":"cognition","issues":5},{"tag":"dementia","issues":4},{"tag":"longevity","issues":4},{"tag":"mitochondria","issues":4},{"tag":"sarcopenia","issues":4}]},"citations":{"total":0,"withPaper":0},"glossary":{"categories":17,"top":[{"category":"biology","terms":125},{"category":"biomarker","terms":72},{"category":"concept","terms":64},{"category":"therapeutic","terms":55},{"category":"nutrition","terms":51},{"category":"exercise","terms":43},{"category":"metabolism","terms":34},{"category":"cognition","terms":32}],"other":{"categories":9,"terms":181}},"german":{"papers":271,"papersTranslated":227,"articles":27,"articlesTranslated":27}},"tools":{"ranking":["faceAge","ageTest","grip","homaIr","vo2max","pseudoscience","calorie","protein","jetlag","menopause","zone2"],"longevityCheck":{"results":51,"sessions":4,"cities":3,"byTest":[{"test":"grip","participants":47}],"verification":[{"status":"self-reported","results":28},{"status":"event-submitted","results":3},{"status":"verified","results":20}]}},"people":{"members":{"atStart":12,"joined":899,"byMonth":[25,25,41,92,93,121,167,172,163,0,0,0]},"goals":{"members":899,"stated":327,"byGoal":[{"goal":"events_community","count":223},{"goal":"research_read","count":219},{"goal":"meet_people","count":188},{"goal":"track_data","count":186}],"meetPrefs":[{"pref":"events","count":178},{"pref":"coffee","count":117},{"pref":"dating","count":55}]},"onboarding":{"members":899,"completed":327,"completionShare":0.364,"skipped":[{"step":"location","count":200},{"step":"profile","count":196},{"step":"healthStack","count":107},{"step":"challenge","count":33},{"step":"photo","count":30},{"step":"bio","count":22}]},"byCity":[{"slug":"munich","name":{"en":"Munich","de":"München"},"members":62},{"slug":"berlin","name":{"en":"Berlin","de":"Berlin"},"members":40},{"slug":"hamburg","name":{"en":"Hamburg","de":"Hamburg"},"members":37},{"slug":"zurich","name":{"en":"Zurich","de":"Zürich"},"members":21},{"slug":"cologne","name":{"en":"Cologne","de":"Köln"},"members":13},{"slug":"frankfurt","name":{"en":"Frankfurt","de":"Frankfurt"},"members":13},{"slug":"shanghai","name":{"en":"Shanghai","de":"Shanghai"},"members":11},{"slug":"vienna","name":{"en":"Vienna","de":"Wien"},"members":11},{"slug":"san-francisco","name":{"en":"San Francisco","de":"San Francisco"},"members":8},{"slug":"new-york","name":{"en":"New York","de":"New York"},"members":7}],"otherCities":{"cities":27,"members":81},"cityNotRecorded":595,"coffee":{"rounds":0,"poolSize":0,"matched":0,"pairs":0,"unmatched":0,"rolledForward":0,"byScope":{"city":0,"country":0,"virtual":0},"pairsByMonth":[0,0,0,0,0,0,0,0,0,0,0,0]},"push":{"total":null,"byLang":[]},"newsletter":{"confirmed":7753,"byMonth":[0,0,0,0,0,0,3,4296,3454,0,0,0],"bySource":[{"source":"face-age-gate","confirmed":7695},{"source":"luma-event","confirmed":58}]}},"habits":{"formed":2,"quorumReached":0,"started":0,"endedEarly":0,"roundDays":[{"days":14,"count":0},{"days":28,"count":0},{"days":42,"count":0},{"days":56,"count":0}],"weeksAttempted":0,"weeksCompleted":0,"completionShare":null,"partners":{"requests":17,"byCategory":[{"category":"fitness","count":6},{"category":"mindfulness","count":4},{"category":"recovery","count":3},{"category":"nutrition","count":2},{"category":"sleep","count":null},{"category":"productivity","count":0},{"category":"other","count":null}],"byDuration":[{"days":7,"count":0},{"days":14,"count":0},{"days":21,"count":12},{"days":30,"count":2},{"days":66,"count":2}],"noDuration":1,"frequency":{"daily":12,"weekly":5},"matched":10,"startedCount":9,"completed":1,"bothCompleted":0},"partnerCheckIns":{"total":85,"byMonth":[21,37,0,0,0,0,16,2,9,0,0,0]},"challengeCheckIns":0,"badges":{"earned":301,"backfilled":163,"byRarity":[{"rarity":"common","count":215},{"rarity":"rare","count":65},{"rarity":"uncommon","count":21},{"rarity":"legendary","count":0},{"rarity":"unrated","count":0}],"byMonth":[0,0,0,0,0,0,0,192,109,0,0,0]},"feed":{"posts":4,"byType":[{"type":"general","count":2},{"type":"question","count":1},{"type":"win","count":1},{"type":"recommend","count":0}],"replies":0,"likes":[{"target":"event_photos","count":72},{"target":"event","count":56},{"target":"news_digest","count":29},{"target":"article","count":13},{"target":"community_challenge","count":0}],"comments":[{"target":"event_photos","count":3},{"target":"event","count":0},{"target":"article","count":0},{"target":"news_digest","count":0},{"target":"community_challenge","count":0}],"hearts":{"total":54,"byMonth":[4,8,0,13,13,4,6,5,1,0,0,0]}},"stampsIssued":0},"stack":{"owners":318,"items":2027,"topItems":[{"name":{"en":"Vitamin D3","de":"Vitamin D3"},"members":157,"share":0.494},{"name":{"en":"Creatine","de":"Creatine"},"members":156,"share":0.491},{"name":{"en":"Walking","de":"Gehen"},"members":125,"share":0.393},{"name":{"en":"Running","de":"Laufen"},"members":106,"share":0.333},{"name":{"en":"Omega-3 Fish Oil","de":"Omega-3 Fish Oil"},"members":103,"share":0.324},{"name":{"en":"Magnesium Glycinate","de":"Magnesium Glycinat"},"members":98,"share":0.308},{"name":{"en":"Weight Training","de":"Krafttraining"},"members":93,"share":0.292},{"name":{"en":"Vitamin D3 + K2","de":"Vitamin D3 + K2"},"members":85,"share":0.267},{"name":{"en":"Omega-3","de":"Omega-3"},"members":83,"share":0.261},{"name":{"en":"Apple Watch","de":"Apple Watch"},"members":81,"share":0.255}],"byCategory":[{"category":"supplement","members":268},{"category":"workout","members":232},{"category":"device","members":190}],"added":{"total":2001,"byMonth":[106,70,100,222,360,345,243,288,267,0,0,0]},"catalog":{"items":499,"verified":362},"metrics":{"types":[{"type":"photo","members":147},{"type":"pace","members":57}],"readings":234,"bioAgeDeltaYears":null}},"organisers":{"people":62,"citiesPerOrganiser":{"one":59,"two":3,"threePlus":0}},"map":{"spotsApproved":4914}}