Author Archives:
Gratitude saw 25% higher retention for widget users
Practicing gratitude may decrease symptoms of depression and anxiety, and improve mental health and life satisfaction1. Consistent gratitude practice may lead to sustained improvements that last months2. The mindfulness app Gratitude encourages consistency through micro daily journaling, affirmations, and vision boards. The app has over 6 million downloads, 150 thousand 5-star ratings, and 100 million journal entries logged.
Developers Divij Gupta and Narendra Aanjna developed widgets for each of their app’s core user journeys. Their goal was to meet users in their everyday moments without requiring the overhead of a full app session.
By surfacing interactive journaling prompts, affirmations, vision board images and metrics directly on the user’s home screen, the team lowered the barrier to entry for daily reflection and reported a 25% increase in retention for widget users and ~1K weekly journal entries from widgets. This increase in user loyalty translates to tangible health outcomes for the users: consistent habit formations that support long-term mental well-being.“Widgets helped us make the app more present in users’ daily routines by providing quick inspiration, reminders, and reflections directly on the home screen. This increased engagement and made it easier for users to stay consistent with their mindfulness practices.” – Divij Gupta
The Challenge: modernize without decreasing retention
While the impact of widgets was clear, Gratitude’s original XML-based RemoteViews implementation created technical debt. As the app’s design system evolved toward Material 3, the legacy widgets became increasingly difficult to align with the modern UI. Every visual update required manual XML overhead and brittle workarounds, slowing developer velocity.The Solution Part 1: migrating from XML to Jetpack Glance
To modernize their widgets, the team turned to Jetpack Glance.They first consulted the Widgets on Android design page and canonical widget layouts to understand best practices for displaying information within a limited amount of space.
Then, they migrated their widget suite to Jetpack Glance. This declarative framework enabled the developers to move from planning to shipping in less than a month, saving about 50% development time, and saw two additional advantages:
- Replacing restrictive XML layouts with declarative code made the codebase easier to read, maintain, and reduced developer effort.
- Jetpack Glance allowed the team to more easily implement dynamic colors, flexible resizing, and expanded configuration options. These features ensure the widgets harmonize with a user's unique home screen layout.
While Glance simplified the UI, the team noted that testing across various OEM launchers was also essential to ensure layout consistency across devices.
The team also implemented Generated Widget Previews so users can see personalized previews. They noted that testing Generated Previews could be slow, as the previews are rate limited to preserve battery. To bypass the rate limiting for testing, use the adb command:
adb shell device_config put systemui generated_preview_api_reset_interval_ms 0
All of their efforts have made the Gratitude widget high quality and differentiated.
The Solution Part 2: promote new widgets in-app
The developers then used in-app widget pinning to increase widget discoverability and widget installs. Asking users to install widgets at a contextually relevant moment within the app helps users find their widgets without needing to go through the system widget picker. The following GIF shows Gratitude’s bottom sheet to add widgets from within the app:
requestPinGlanceAppWidget prompt inviting widget users to use the new modernized widgets. Developer Tip: To maintain widget installs while migrating from RemoteViews to Jetpack Glance, ensure yourGlanceAppWidgetReceiveruses the same class name and package as your previousAppWidgetProviderin the Android Manifest. If a new class name or package location is required, follow the Gratitude’s lead by using in-app pinning to help users restore their widgets.
The strategy is working, as 10% of total DAU have adopted widgets.
Conclusion
“Our experience with Jetpack Glance has been excellent. The Compose-based approach feels much more modern, flexible, and aligned with the way we build the rest of our UI today. It allows us to express widget layouts more naturally, reuse familiar Compose components, and iterate on UI changes much faster. Many of the UI constraints we previously faced with RemoteViews are no longer an issue, which made it easier to build widgets that better match our app’s design and experience.” – Divij Gupta
Getting Started
To get started with Jetpack Glance and learn about the technologies mentioned in this post, see these guides:
- Jetpack Glance Overview
- Widgets on Android design page
- Canonical widget layouts
- Generated Widget Previews
- Widget Quality Tiers
- In-app widget pinning
- Dynamic colors
- Resizing
- Configuration activities
See other widget case studies:
- Google’s Contacts app created a new widget 25% faster using Jetpack Glance
- SoundCloud uses Jetpack Glance to build Liked Tracks widget in just 2 weeks
1: Diniz, G., Korkes, L., Tristão, L. S., Pelegrini, R., Bellodi, P. L., & Bernardo, W. M. (2023). The effects of gratitude interventions: a systematic review and meta-analysis. einstein (Sao Paulo)., 21, eRW0371. https://doi.org/10.31744/einstein_journal/2023RW0371
2: Bohlmeijer, E., Kraiss, J., Schotanus-Dijkstra, M., & ten Klooster, P. (2022). Gratitude as mood mediates the effects of a 6-weeks gratitude intervention on mental well-being: post hoc analysis of a randomized controlled trial. Front. Psychol., 12, 799447. https://doi.org/10.3389/fpsyg.2021.799447
Source: Android Developers Blog
See what happens when creative legends use AI to make ads for small businesses.
Source: The Official Google Blog
Improvements To Help Me Write in Gmail
- Topic contextualization: The feature can now connect to Google Drive and Gmail based on your prompt. It will then use the context from these apps to automatically insert relevant information into the email draft, reducing the time you spend toggling between apps to find specific details.
- Tone and style personalization: Help me write can also now create personalized email drafts that match the tone and style of your previously written emails.
![]() |
| Before and after of a generated email |
- Responding to inquiries from customers and partners
- Distributing information, documents, or materials to collaborators
- Reporting progress, milestones, and project-related issue to leadership
- Seeking assistance or answers from team
- Providing or asking for feedback from peers
- Sharing team announcements or progress reports to the organization
- Introducing new projects
- Exploring potential partnerships
- Teacher-parent- communications
- Grant proposals
Getting started
- Admins: This feature is available by default if both Gemini for Workspace in Gmail is enabled and Workspace Intelligence access to Gmail is enabled.
- End users: This feature is available by default and activated for prompts that have relevant context. Visit the Help Center article to learn more about drafting emails with Gemini in Gmail.
Rollout pace
- Rapid Release and Scheduled Release domains: Extended rollout (potentially longer than 15 days for feature visibility) started on May 5, 2026
Availability
- Business: Business Starter, Standard, and Plus
- Enterprise: Enterprise Starter, Standard, and Plus
- Consumer: Google AI Plus, Pro, and Ultra
- Education Add-ons: Google AI Pro for Education
Resources
- Google Help: Draft emails with Gemini in Gmail
Source: Google Workspace Updates
Chrome Dev for Desktop Update
The Dev channel has been updated to 150.0.7828.2 for Windows, Mac and Linux.
A partial list of changes is available in the Git log. Interested in switching release channels? Find out how. If you find a new issue, please let us know by filing a bug. The community help forum is also a great place to reach out for help or learn about common issues.
Chrome Release Team
Google Chrome
Source: Google Chrome Releases
Dev Channel Update for ChromeOS / ChromeOS Flex
The ChromeOS Dev channel is being updated to OS version 16667.5.0 (Browser version 149.0.7827.4) for most ChromeOS devices.
- File a bug
Visit our ChromeOS communities
General: Chromebook Help Community
Beta Specific: ChromeOS Beta Help Community
Interested in switching channels? Find out how.
Luis Menezes
Google ChromeOS
Source: Google Chrome Releases
Data Manager API: Introducing support for Google Ads store sales and more event ingestion use cases for Google Analytics
We're excited to announce several significant enhancements to the Data Manager API. This release introduces support for uploading store sales conversions to Google Ads and broadens support for Google Analytics event ingestion.
Store sales conversions
The Data Manager API offers a streamlined ingestion workflow for sending store sales conversions to Google Ads. This workflow eliminates the need to create and monitor multiple offline jobs and replaces those jobs with a single API request. You can also leverage additional features such as confidential matching, encryption for user identifiers, and support for sending multiple items per event in CartData. To use this feature, your Google Ads account must meet certain eligibility requirements.
Google Analytics web and app events
Building on our existing capabilities, we've expanded support for sending events to Google Analytics within the Data Manager API.
- Web and app data stream event ingestion: You can now send any event to both your Google Analytics web and app data streams, provided they're not reserved events.
- Data Manager API is an alternative to Measurement Protocol for sending recommended and custom events directly to Google Analytics.
- Data Manager API's unified schema now supports important metadata like app instance ID, event location, and mobile device information for app events.
- Event routing: Configure a destination using your Firebase App ID or Measurement ID to send an event to your Google Analytics app stream or web stream respectively.
- Expanded support for events sent as an additional data source: The Data Manager API now supports sending any event with a transaction ID to both web and app data streams as an additional data source for your tag or Google Analytics for Firebase (GA4F) SDK implementation.
- This feature is no longer restricted to
purchaseevents sent to web data streams. - This feature is limited to Google Analytics properties on an allowlist; please fill out this form if you're interested in adding your property to the allowlist.
- This feature is no longer restricted to
Get started
- Upgrade your existing store sales workflows to gain access to future improvements and features:
- Start sending events to Google Analytics with the Data Manager API:
Connect with us
If you have any questions or want to discuss this post, please reach out to us on our "Google Advertising and Measurement Community" Discord server. You can also contact us through the support page if you have an issue or need help with the API.
If you're interested in becoming a data partner, please fill out the Partner Interest Form.
Source: Google Ads Developer Blog
Google Workspace Studio available in more languages
- French
- German
- Italian
- Japanese
- Korean
- Portuguese
- Spanish
Getting started
- Admins: There is no admin control for this feature.
- End users: Try out Google Workspace Studio, and visit the Help Center to learn more.
Rollout pace
- Rapid Release and Scheduled Release domains: Full rollout (1–3 days for feature visibility) starting on May 7, 2026
Availability
- Business: Business Starter, Standard, and Plus
- Enterprise: Enterprise Standard and Plus
- Education: Education Fundamentals, Standard, Plus, Teaching and Learning
- AI Add-ons: Google AI Pro for Education
Resources
- Google Workspace Admin Help: Workspace Studio admin help
- Google Help: Workspace Studio Help
- Google Workspace Learning Center: Workspace Studio training and help
- Google Workspace Blog: Introducing Google Workspace Studio: Automate everyday work with AI agents
- YouTube: Google Workspace Studio video playlist
- Discord Channel: Google Workspace Studio Discord
Source: Google Workspace Updates
Chrome Beta for Android Update
Hi everyone! We've just released Chrome Beta 149 (149.0.7827.5) for Android. It's now available on Google Play.
You can see a partial list of the changes in the Git log. For details on new features, check out the Chromium blog, and for details on web platform updates, check here.
If you find a new issue, please let us know by filing a bug.
Chrome Release Team
Google Chrome
Source: Google Chrome Releases
Managing your integrations at scale: Ads DevCast E4
Scaling an advertising integration is more than just writing code—it requires a deep understanding of efficiency, resilience, and auditability. In Episode 4 of Ads DevCast, "Managing your integrations at scale," we break down universal architectural best practices and product-specific solutions to help you optimize your advertising integrations.
Whether you are working with the Google Ads API, Google Ads scripts, Data Manager API, DV360, or Google Analytics, here is a summary of the key takeaways to build high-performance, scalable systems.
Universal Principles of Robust Integrations
- Respect Rate Limits: Rate limits are a reality of using APIs at scale. Understand your limits beforehand to prevent lockouts and maintain a healthy integration. Read the error messages — they may contain instructions on what to do next. For transient or retry-able errors, don't hammer the server with rapid retries. Instead, implement exponential back-off with jitter to give the system time to recover.
- Prioritize Logging and Monitoring: Always consider logging in production where appropriate. Capture crucial metadata, like the Google Ads API
request_id, in your structured logs to trace failures instantly. If a call is erroring, write that error payload to logs. Set up proactive alerts to catch errors before they impact operations. - Use Official Client Libraries: While direct REST/gRPC calls are supported in many of our products, using official libraries saves development time and handles heavy lifting (e.g., serialization and authentication) out of the box.
- Cache Smartly: Reduce redundant queries. If you are querying historical data that will no longer change, cache it locally to save bandwidth and rate limits.
Product-Specific Best Practices
- Google Ads API: Optimize efficiency by Batching Operations. Group operations logically to reduce round-trips. Order your operations correctly to improve execution efficiency.
- Data Manager API: Batch ingestion requests to process events efficiently. Understand the difference between synchronous errors (structural issues returned instantly that reject the whole batch) and asynchronous validation (monitored via the Diagnostics endpoint).
- Google Ads scripts: Avoid sequential iterations when dealing with many accounts at once. Use Bulk Uploads with CSV tables to apply scaled operations, and leverage the
executeInParallelmethod for MCC scripts to run up to 50 concurrent execution threads. - Display & Video 360 API: Utilize Structured Data Files (SDFs) to manage YouTube line items and ad group bulk operations that aren't natively supported by the API.
- Google Analytics: Enable daily BigQuery Exports for event-level data, and utilize Long-running Asynchronous Report Tasks in the Analytics Data API v1alpha to build scalable, customized reports without HTTP timeouts.
Next Steps:
Watch the full episode on our YouTube channel (or listen on YT Music)
Check out our Advertising and Measurement Developer Hub.
Join our community on Discord and share your scaling stories or questions with Googlers and other developers.
Learn more in our guides below:
- Google Ads API Best Practices and Batch Processing
- Google Ads scripts Bulk Upload and Best Practices
- Analytics BigQuery Solution and Report Tasks Fundamentals
- Data Manager API Best Practices, Limits, and Diagnostics
- Display & Video 360 Structured Data Files (SDFs)
Source: Google Ads Developer Blog







