<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Google Analytics with Experience Builder? in ArcGIS Experience Builder Questions</title>
    <link>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/1162908#M4130</link>
    <description>&lt;P&gt;Hi Scott,&lt;BR /&gt;&lt;BR /&gt;Where would you insert your GoogleAnalytic's ID, though?&amp;nbsp; There's only one index.html&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://BASE_URL/index.html" target="_blank" rel="noopener"&gt;https://BASE_URL/index.html&lt;/A&gt;&amp;nbsp; &amp;nbsp;&amp;lt;&amp;lt; this is easy to edit&lt;BR /&gt;&lt;BR /&gt;Here is what you would need to do:&lt;BR /&gt;&lt;BR /&gt;1. clone &lt;U&gt;&lt;EM&gt;every&lt;/EM&gt;&lt;/U&gt; widget that you are using in your ExB map.&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;1.1 example: copy whole folder from&amp;nbsp;c:\ArcGISExperienceBuilder\client\dist\widgets\common\&lt;STRONG&gt;search&lt;BR /&gt;&lt;/STRONG&gt;1.2 paste in c:\Temp&lt;BR /&gt;1.3 Rename the folder from \search\ to \&lt;STRONG&gt;my-&lt;/STRONG&gt;search\&lt;BR /&gt;1.4 Edit the manifest.json to change the name to my-search&lt;BR /&gt;1.5 (while you're at it, change the icon.svg &amp;amp; fix the issues in&amp;nbsp;popper-style.ts &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&amp;nbsp;&lt;BR /&gt;1.6 Copy your cloned widget into&amp;nbsp;c:\ArcGISExperienceBuilder\client\your-extensions\widgets\&lt;STRONG&gt;my-&lt;/STRONG&gt;search&lt;BR /&gt;&lt;BR /&gt;2. Use &lt;STRONG&gt;my-&lt;/STRONG&gt;search widget from now on in your ExB maps&lt;BR /&gt;&lt;BR /&gt;3. Edit&amp;nbsp;C:\ArcGISExperienceBuilder\client\your-extensions\widgets\bcc-search\src\runtime\widget.tsx&lt;BR /&gt;&lt;BR /&gt;4.We will use the 'react-ga' library (don't forget to do a &lt;STRONG&gt;npm -ci&lt;/STRONG&gt; to fetch the required libraries)&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;ReactGA&lt;/SPAN&gt; &lt;SPAN class=""&gt;from&lt;/SPAN&gt; &lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;react-ga&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;const&lt;/SPAN&gt; &lt;SPAN class=""&gt;TRACKING_ID&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;UA-XXXXX-X&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt; &lt;SPAN class=""&gt;// OUR_TRACKING_ID&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;ReactGA&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;initialize&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;TRACKING_ID&lt;/SPAN&gt;&lt;SPAN class=""&gt;);&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;Then modify your render function&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;//useAnalyticsEventTracker.jsx&lt;/SPAN&gt;

&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;React&lt;/SPAN&gt; &lt;SPAN class=""&gt;from&lt;/SPAN&gt; &lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;react&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;
&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;ReactGA&lt;/SPAN&gt; &lt;SPAN class=""&gt;from&lt;/SPAN&gt; &lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;react-ga&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;

&lt;SPAN class=""&gt;const&lt;/SPAN&gt; &lt;SPAN class=""&gt;useAnalyticsEventTracker&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;category&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;Blog category&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt; &lt;SPAN class=""&gt;{&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;const&lt;/SPAN&gt; &lt;SPAN class=""&gt;eventTracker&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;action&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;test action&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt; &lt;SPAN class=""&gt;label&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;test label&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt; &lt;SPAN class=""&gt;{&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;ReactGA&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;event&lt;/SPAN&gt;&lt;SPAN class=""&gt;({&lt;/SPAN&gt;&lt;SPAN class=""&gt;category&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt; &lt;SPAN class=""&gt;action&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt; &lt;SPAN class=""&gt;label&lt;/SPAN&gt;&lt;SPAN class=""&gt;});&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;}&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;return&lt;/SPAN&gt; &lt;SPAN class=""&gt;eventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;
&lt;SPAN class=""&gt;}&lt;/SPAN&gt;
&lt;SPAN class=""&gt;export&lt;/SPAN&gt; &lt;SPAN class=""&gt;default&lt;/SPAN&gt; &lt;SPAN class=""&gt;useAnalyticsEventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;

&lt;SPAN class=""&gt;//ContactUs.jsx&lt;/SPAN&gt;
&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;useAnalyticsEventTracker&lt;/SPAN&gt; &lt;SPAN class=""&gt;from&lt;/SPAN&gt; &lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;./useAnalyticsEventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;

&lt;SPAN class=""&gt;const&lt;/SPAN&gt; &lt;SPAN class=""&gt;ContactUs&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;()&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt; &lt;SPAN class=""&gt;{&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;const&lt;/SPAN&gt; &lt;SPAN class=""&gt;gaEventTracker&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;useAnalyticsEventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;Contact us&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;);&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;return&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;div&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;h3&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;Contact&lt;/SPAN&gt; &lt;SPAN class=""&gt;Us&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/h3&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;     &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;div&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt; 
       &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;a&lt;/SPAN&gt; &lt;SPAN class=""&gt;href&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;#&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt; &lt;SPAN class=""&gt;onClick&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN class=""&gt;{()&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;gaEventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;call&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;)}&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;Call&lt;/SPAN&gt; &lt;SPAN class=""&gt;Us&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/a&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;      &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/div&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;     &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;div&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;
       &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;a&lt;/SPAN&gt; &lt;SPAN class=""&gt;href&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;mailto:someone@example.com&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt; &lt;SPAN class=""&gt;onClick&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN class=""&gt;{()&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;gaEventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;email&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;)}&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;Write&lt;/SPAN&gt; &lt;SPAN class=""&gt;to&lt;/SPAN&gt; &lt;SPAN class=""&gt;us&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/a&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;      &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/div&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;  &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/div&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;};&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&lt;BR /&gt;5. Save the widget.tsx ,&amp;nbsp; you could also inject your Google Analytics in the sub-components (usually located in the /runtime/components/ folder)&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://blog.saeloun.com/2022/02/17/how-to-integrate-react-app-with-google-analytics.html" target="_blank" rel="noopener"&gt;https://blog.saeloun.com/2022/02/17/how-to-integrate-react-app-with-google-analytics.html&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;(use good old&amp;nbsp;&lt;A href="https://unminify.com/" target="_blank" rel="noopener"&gt;https://unminify.com/&lt;/A&gt;&amp;nbsp;for all obfuscated .js/html)&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Sun, 10 Apr 2022 23:49:24 GMT</pubDate>
    <dc:creator>FredericPoliart_EsriAU</dc:creator>
    <dc:date>2022-04-10T23:49:24Z</dc:date>
    <item>
      <title>Google Analytics with Experience Builder?</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272013#M421</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Is is possible to use Google Analytics with Experience Builder? Is there a place to set a Google Analytics Tracking ID, like one can in StoryMaps or Hubs? Or, perhaps other, more complicated ways to tie the two together?&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Jul 2020 13:39:32 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272013#M421</guid>
      <dc:creator>PeterKnoop</dc:creator>
      <dc:date>2020-07-17T13:39:32Z</dc:date>
    </item>
    <item>
      <title>Re: Google Analytics with Experience Builder?</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272014#M422</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have the same question.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I know we could use the Developer Edition and download the experience to host on our own website (and add the GA tags from there) but we're looking for an easier way.&amp;nbsp; Happy to have the app hosted on AGO for both administrative simplification and site performance but really need a way to track usage&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Jul 2020 16:32:14 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272014#M422</guid>
      <dc:creator>ScottAulen</dc:creator>
      <dc:date>2020-07-20T16:32:14Z</dc:date>
    </item>
    <item>
      <title>Re: Google Analytics with Experience Builder?</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272015#M423</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any update on this\roadmap for when supported?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;With the latest Sept 29 AGOL release we are seeing more apps with GA support&amp;nbsp;&lt;SPAN style="color: null;"&gt;&lt;SPAN&gt;ArcGIS Configurable Apps with express setup (Media Map, Minimalist, Interactive Legend,&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;Zone Lookup, Nearby, and Attachment Viewer) continue expanding and improvements planned&amp;nbsp;&lt;SPAN style="color: null;"&gt;&lt;SPAN&gt;for this release include support for Google Analytics&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: null;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: null;"&gt;&lt;SPAN&gt;My work around currently to track usage is to add the app to a hub site!&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: null;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: null;"&gt;&lt;SPAN&gt;Regards&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: null;"&gt;&lt;SPAN&gt;Charlie&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Oct 2020 10:56:31 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272015#M423</guid>
      <dc:creator>CharlieColey</dc:creator>
      <dc:date>2020-10-05T10:56:31Z</dc:date>
    </item>
    <item>
      <title>Re: Google Analytics with Experience Builder?</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272016#M424</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To the best of my knowledge, the Experience Builder team is&amp;nbsp;exploring the possibility, but it is currently not supported. I recommend submitting this as an idea for our Experience Builder team and upvoting the idea.&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Oct 2020 18:50:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272016#M424</guid>
      <dc:creator>DeidreWolf</dc:creator>
      <dc:date>2020-10-07T18:50:36Z</dc:date>
    </item>
    <item>
      <title>Re: Google Analytics with Experience Builder?</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272017#M425</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A href="https://community.esri.com/migrated-users/7346"&gt;Peter Knoop&lt;/A&gt;‌ &lt;A href="https://community.esri.com/migrated-users/411023"&gt;Scott Aulen&lt;/A&gt;‌ &lt;A href="https://community.esri.com/migrated-users/53416"&gt;Charlie Coley&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;This has now been logged has an internal Enhancement Request&amp;nbsp;ENH-000134433 : Provide ability to track ArcGIS Experience Builder's Performance with Google Analytics.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is not a guarantee that the functionality will be introduced so I therefore also advise an idea is submitted to ArcGIS Ideas as per&amp;nbsp;Deidre's suggestion.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Oct 2020 09:12:52 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272017#M425</guid>
      <dc:creator>Richard_Purkis</dc:creator>
      <dc:date>2020-10-08T09:12:52Z</dc:date>
    </item>
    <item>
      <title>Re: Google Analytics with Experience Builder?</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272018#M426</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks. I created an ArcGIS Idea for it, please add you Up Votes &lt;A href="https://community.esri.com/migrated-users/35057"&gt;Scott Aulen&lt;/A&gt;‌ &lt;A href="https://community.esri.com/migrated-users/53416"&gt;Charlie Coley&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" href="https://community.esri.com/ideas/19184-provide-ability-to-track-arcgis-experience-builder-interactions-with-google-analytics"&gt;Provide ability to track ArcGIS Experience Builder interactions with Google Analytics&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 19 Oct 2020 17:23:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/272018#M426</guid>
      <dc:creator>PeterKnoop</dc:creator>
      <dc:date>2020-10-19T17:23:16Z</dc:date>
    </item>
    <item>
      <title>Re: Google Analytics with Experience Builder?</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/1000829#M1225</link>
      <description>&lt;P&gt;Could you elaborate on how you brought your app into a hub? I have a UA for my app, but I am getting lost inside of hub.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 12 Nov 2020 19:01:39 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/1000829#M1225</guid>
      <dc:creator>LaurenMiller78</dc:creator>
      <dc:date>2020-11-12T19:01:39Z</dc:date>
    </item>
    <item>
      <title>Re: Google Analytics with Experience Builder?</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/1162908#M4130</link>
      <description>&lt;P&gt;Hi Scott,&lt;BR /&gt;&lt;BR /&gt;Where would you insert your GoogleAnalytic's ID, though?&amp;nbsp; There's only one index.html&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://BASE_URL/index.html" target="_blank" rel="noopener"&gt;https://BASE_URL/index.html&lt;/A&gt;&amp;nbsp; &amp;nbsp;&amp;lt;&amp;lt; this is easy to edit&lt;BR /&gt;&lt;BR /&gt;Here is what you would need to do:&lt;BR /&gt;&lt;BR /&gt;1. clone &lt;U&gt;&lt;EM&gt;every&lt;/EM&gt;&lt;/U&gt; widget that you are using in your ExB map.&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;1.1 example: copy whole folder from&amp;nbsp;c:\ArcGISExperienceBuilder\client\dist\widgets\common\&lt;STRONG&gt;search&lt;BR /&gt;&lt;/STRONG&gt;1.2 paste in c:\Temp&lt;BR /&gt;1.3 Rename the folder from \search\ to \&lt;STRONG&gt;my-&lt;/STRONG&gt;search\&lt;BR /&gt;1.4 Edit the manifest.json to change the name to my-search&lt;BR /&gt;1.5 (while you're at it, change the icon.svg &amp;amp; fix the issues in&amp;nbsp;popper-style.ts &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&amp;nbsp;&lt;BR /&gt;1.6 Copy your cloned widget into&amp;nbsp;c:\ArcGISExperienceBuilder\client\your-extensions\widgets\&lt;STRONG&gt;my-&lt;/STRONG&gt;search&lt;BR /&gt;&lt;BR /&gt;2. Use &lt;STRONG&gt;my-&lt;/STRONG&gt;search widget from now on in your ExB maps&lt;BR /&gt;&lt;BR /&gt;3. Edit&amp;nbsp;C:\ArcGISExperienceBuilder\client\your-extensions\widgets\bcc-search\src\runtime\widget.tsx&lt;BR /&gt;&lt;BR /&gt;4.We will use the 'react-ga' library (don't forget to do a &lt;STRONG&gt;npm -ci&lt;/STRONG&gt; to fetch the required libraries)&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;ReactGA&lt;/SPAN&gt; &lt;SPAN class=""&gt;from&lt;/SPAN&gt; &lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;react-ga&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;const&lt;/SPAN&gt; &lt;SPAN class=""&gt;TRACKING_ID&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;UA-XXXXX-X&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt; &lt;SPAN class=""&gt;// OUR_TRACKING_ID&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;ReactGA&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;initialize&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;TRACKING_ID&lt;/SPAN&gt;&lt;SPAN class=""&gt;);&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;Then modify your render function&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;//useAnalyticsEventTracker.jsx&lt;/SPAN&gt;

&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;React&lt;/SPAN&gt; &lt;SPAN class=""&gt;from&lt;/SPAN&gt; &lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;react&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;
&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;ReactGA&lt;/SPAN&gt; &lt;SPAN class=""&gt;from&lt;/SPAN&gt; &lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;react-ga&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;

&lt;SPAN class=""&gt;const&lt;/SPAN&gt; &lt;SPAN class=""&gt;useAnalyticsEventTracker&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;category&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;Blog category&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt; &lt;SPAN class=""&gt;{&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;const&lt;/SPAN&gt; &lt;SPAN class=""&gt;eventTracker&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;action&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;test action&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt; &lt;SPAN class=""&gt;label&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;test label&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt; &lt;SPAN class=""&gt;{&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;ReactGA&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;event&lt;/SPAN&gt;&lt;SPAN class=""&gt;({&lt;/SPAN&gt;&lt;SPAN class=""&gt;category&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt; &lt;SPAN class=""&gt;action&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt; &lt;SPAN class=""&gt;label&lt;/SPAN&gt;&lt;SPAN class=""&gt;});&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;}&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;return&lt;/SPAN&gt; &lt;SPAN class=""&gt;eventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;
&lt;SPAN class=""&gt;}&lt;/SPAN&gt;
&lt;SPAN class=""&gt;export&lt;/SPAN&gt; &lt;SPAN class=""&gt;default&lt;/SPAN&gt; &lt;SPAN class=""&gt;useAnalyticsEventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;

&lt;SPAN class=""&gt;//ContactUs.jsx&lt;/SPAN&gt;
&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;useAnalyticsEventTracker&lt;/SPAN&gt; &lt;SPAN class=""&gt;from&lt;/SPAN&gt; &lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;./useAnalyticsEventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;;&lt;/SPAN&gt;

&lt;SPAN class=""&gt;const&lt;/SPAN&gt; &lt;SPAN class=""&gt;ContactUs&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;()&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt; &lt;SPAN class=""&gt;{&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;const&lt;/SPAN&gt; &lt;SPAN class=""&gt;gaEventTracker&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;useAnalyticsEventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;Contact us&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;);&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;return&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;div&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;h3&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;Contact&lt;/SPAN&gt; &lt;SPAN class=""&gt;Us&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/h3&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;     &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;div&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt; 
       &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;a&lt;/SPAN&gt; &lt;SPAN class=""&gt;href&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;#&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt; &lt;SPAN class=""&gt;onClick&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN class=""&gt;{()&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;gaEventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;call&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;)}&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;Call&lt;/SPAN&gt; &lt;SPAN class=""&gt;Us&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/a&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;      &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/div&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;     &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;div&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;
       &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;a&lt;/SPAN&gt; &lt;SPAN class=""&gt;href&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;mailto:someone@example.com&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt; &lt;SPAN class=""&gt;onClick&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN class=""&gt;{()&lt;/SPAN&gt;&lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;gaEventTracker&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;email&lt;/SPAN&gt;&lt;SPAN class=""&gt;'&lt;/SPAN&gt;&lt;SPAN class=""&gt;)}&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;Write&lt;/SPAN&gt; &lt;SPAN class=""&gt;to&lt;/SPAN&gt; &lt;SPAN class=""&gt;us&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/a&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;      &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/div&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;gt;&lt;/SPAN&gt;  &lt;SPAN class=""&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;/div&amp;gt;&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;};&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&lt;BR /&gt;5. Save the widget.tsx ,&amp;nbsp; you could also inject your Google Analytics in the sub-components (usually located in the /runtime/components/ folder)&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://blog.saeloun.com/2022/02/17/how-to-integrate-react-app-with-google-analytics.html" target="_blank" rel="noopener"&gt;https://blog.saeloun.com/2022/02/17/how-to-integrate-react-app-with-google-analytics.html&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;(use good old&amp;nbsp;&lt;A href="https://unminify.com/" target="_blank" rel="noopener"&gt;https://unminify.com/&lt;/A&gt;&amp;nbsp;for all obfuscated .js/html)&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 10 Apr 2022 23:49:24 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/1162908#M4130</guid>
      <dc:creator>FredericPoliart_EsriAU</dc:creator>
      <dc:date>2022-04-10T23:49:24Z</dc:date>
    </item>
    <item>
      <title>Re: Google Analytics with Experience Builder?</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/1251512#M6091</link>
      <description>&lt;P&gt;Doesn't this only matter if you care to track other pages, views or widgets in the contained app?&amp;nbsp; Otherwise, if we only care about traffic to the app (ala web app builder), don't we just need the tag in the html?&lt;/P&gt;</description>
      <pubDate>Wed, 25 Jan 2023 19:09:26 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/google-analytics-with-experience-builder/m-p/1251512#M6091</guid>
      <dc:creator>DavidColey</dc:creator>
      <dc:date>2023-01-25T19:09:26Z</dc:date>
    </item>
  </channel>
</rss>

