Categories
Analytics computer engineering

Setting Up the Google Analytics MCP Server with Claude Desktop on Windows

This guide walks you through connecting Claude Desktop to your Google Analytics accounts. Once set up, you can ask Claude questions like “show me last month’s traffic for [website]” and get real answers from your GA data.

The setup has many small steps, but none of them are hard if you go in order. Expect to spend about 45–60 minutes the first time.


What You’ll End Up With

  • Claude Desktop will have direct, read-only access to your Google Analytics data.
  • You’ll be able to ask Claude in plain English to pull reports, list accounts, compare time periods, etc.
  • Nothing about this gives Claude permission to modify your GA data — it’s read-only.

What You Need Before Starting

  1. A Windows PC (this guide is Windows-specific).
  2. Claude Desktop installed. Download from claude.ai/download if you don’t have it.
  3. A Google account that has access to at least one Google Analytics property.
  4. About an hour of focused time. Don’t rush; small mistakes compound.

Everything else (Python, Google Cloud project, OAuth credentials, gcloud CLI, etc.) we’ll install or create together below.


Overview: The Big Picture

Before diving in, here’s roughly what we’re going to do, and why. Skim this so the steps make sense:

  1. Install some tools on your PC (Python, pipx, Google Cloud CLI) — these are the plumbing that lets your computer talk to Google.
  2. Create a project inside Google Cloud — a free container where your access credentials will live.
  3. Tell Google “this project is allowed to read Analytics data” by enabling two APIs.
  4. Create an OAuth client — basically a “permission slip” that lets your computer ask for access to your data.
  5. Run a login command that uses that permission slip to save a credential file to your PC.
  6. Install the MCP server — the small program that bridges Claude Desktop and Google Analytics.
  7. Edit a Claude Desktop config file to tell it about the new server.
  8. Restart Claude Desktop and test.

Don’t worry if some of those words don’t mean anything yet. Each step is explained.


Part 1: Install Python

Python is a programming language. The MCP server is written in Python, so we need it installed.

  1. Go to https://www.python.org/downloads/
  2. Click the big yellow “Download Python 3.x.x” button.
  3. Open the downloaded installer.
  4. Important: On the first installer screen, check the box that says “Add python.exe to PATH” at the bottom. This is critical.
  5. Click Install Now and wait for it to finish.

Verify it worked:

  1. Press the Windows key, type PowerShell, and open it.
  2. Type this and press Enter: python --version
  3. You should see something like Python 3.12.5. If you get an error, the PATH checkbox was missed — re-run the installer and check the box.

Part 2: Install pipx

pipx is a tool that installs and runs Python programs without messing with your system.

In the same PowerShell window:

  1. Run: python -m pip install --user pipx Wait for it to finish (about 15 seconds).
  2. Run: python -m pipx ensurepath
  3. Close PowerShell completely and reopen it. This is necessary — pipx won’t be findable until you do.
  4. Verify it worked: pipx --version You should see something like 1.10.0.

Part 3: Install Google Cloud CLI (gcloud)

The Google Cloud CLI is a program that lets your PC log in to Google services from the command line.

  1. Go to https://cloud.google.com/sdk/docs/install#windows
  2. Download the “Google Cloud CLI installer” (the Windows installer, an .exe file).
  3. Run the installer.
  4. During installation:
    • Uncheck “Install Bundled Python” — you already have Python from Part 1.
    • Check “Run ‘gcloud init’ to configure the SDK” (it might be checked by default).
  5. When the installer finishes, a Command Prompt window will open running gcloud init. It will ask you to log in via a browser.
  6. Sign in with the Google account that has access to your Analytics data.
  7. When asked “Pick cloud project to use”, you can pick any existing project, or choose to create a new one. We’re going to create a fresh dedicated one in the next part, so it doesn’t matter what you pick here. You can also just close the window if it feels overwhelming.

Verify it worked:

Close any open PowerShell windows and open a new one (gcloud needs a fresh terminal to be findable). Then:

gcloud --version

You should see version numbers listed. If you get an error, restart your PC and try again.


Part 4: Create a Google Cloud Project

A Google Cloud project is a free container that holds your API permissions. We’ll create a fresh one just for Claude.

  1. Open https://console.cloud.google.com in your browser.
  2. Sign in with the same Google account you used in Part 3.
  3. At the top of the page, you’ll see a project picker dropdown (might say “Select a project” or show an existing project name). Click it.
  4. In the popup, click “NEW PROJECT” in the upper right.
  5. Fill in:
    • Project name: Something memorable like Claude MCP — Google will auto-generate a unique ID like claude-mcp-478621 from this. Write down the ID that appears below the name field; you’ll need it later.
    • Organization / Location: Leave defaults.
  6. Click CREATE and wait ~30 seconds.
  7. Once created, click the project picker at the top again and select your new project (so subsequent steps happen inside it).

Part 5: Enable the Two Required APIs

For your project to be allowed to read Analytics data, two APIs need to be turned on.

  1. Make sure your new project is selected at the top of the Google Cloud Console (the project name should be visible in the project picker).
  2. Open this link: https://console.cloud.google.com/apis/library
  3. In the search box, type “Google Analytics Data API”.
  4. Click the result, then click the blue ENABLE button. Wait a few seconds.
  5. Click your browser’s back button to return to the library, then search for “Google Analytics Admin API”.
  6. Click the result and click ENABLE.

That’s it — both APIs are now turned on for your project.


Part 6: Configure the OAuth Consent Screen

The “consent screen” is what you’ll see when you log in to grant your PC access to your data. You only need to set this up once per project.

  1. Go to: https://console.cloud.google.com/auth/overview
  2. If a setup wizard appears (it usually does for new projects), click GET STARTED.
  3. Fill in the App Information form:
    • App name: Claude MCP (or anything you like — only you will see it)
    • User support email: Pick your own email from the dropdown.
  4. Click NEXT.
  5. Audience: Choose External. (This sounds scary but is correct for personal use. It just means “users outside an organization” — which includes you signing in with your own Gmail.) Click NEXT.
  6. Contact Information: Enter your email again. Click NEXT.
  7. Finish: Check the agreement box and click CONTINUE, then CREATE.

Add Yourself as a Test User

After setup, you need to add yourself to a “test users” list. While the app is in “Testing” mode (which it will be — we’re not publishing it), only listed test users can sign in.

  1. In the left sidebar (under “Google Auth Platform”), click Audience.
    • Direct link: https://console.cloud.google.com/auth/audience
  2. Scroll down to the Test users section.
  3. Click + ADD USERS.
  4. Type your Google email address (the one with Analytics access) and click SAVE.

You should see your email listed under “User information” now.


Part 7: Create an OAuth Client ID

This step creates the “permission slip” your PC will use to ask for access.

  1. Go to: https://console.cloud.google.com/apis/credentials
  2. Make sure your project is selected at the top.
  3. Click + CREATE CREDENTIALS near the top, then choose OAuth client ID from the dropdown.
  4. Application type: Select Desktop app from the dropdown.
  5. Name: Type something like Claude Desktop MCP (only you will see it).
  6. Click CREATE.
  7. A popup will appear showing your Client ID and Client Secret. Click DOWNLOAD JSON to save the credentials file.
  8. Save the downloaded file somewhere you’ll remember, like Documents\Claude\. The filename will look like client_secret_123456789-abcdefg.apps.googleusercontent.com.json.
  9. Important: Don’t share this file with anyone or commit it to a public Git repository. Treat it like a password.

Part 8: Log In and Save Credentials to Your PC

Now we use the OAuth client you just downloaded to log in and save a credentials file that the MCP server will read.

  1. Open PowerShell (Windows key → type “PowerShell” → Enter).
  2. Type the following, replacing C:\path\to\your\client_secret_xxx.json with the actual path to the file you downloaded in Part 7: gcloud auth application-default login --client-id-file="C:\path\to\your\client_secret_xxx.json" --scopes="https://www.googleapis.com/auth/analytics.readonly,https://www.googleapis.com/auth/cloud-platform" Tip: To find the exact path to your downloaded file, open File Explorer, navigate to the file, right-click it, and choose “Copy as path”. Paste that between the quotes. Tip: This command is long. Copy-paste it into PowerShell rather than typing manually.
  3. Press Enter. Your default web browser should open automatically.
  4. Sign in with your Google account (the same one you added as a test user in Part 6).
  5. You’ll see a scary-looking warning: “Google hasn’t verified this app”. This is expected and fine. Click:
    • Advanced (small link at the bottom)
    • Then Go to Claude MCP (unsafe) (or whatever you named your app)
  6. Approve the permissions when asked (Analytics read access + Cloud Platform).
  7. The browser will show “You are now authenticated” and PowerShell will say: Credentials saved to file: [C:\Users\<you>\AppData\Roaming\gcloud\application_default_credentials.json]

Write down (or copy) that exact path — you’ll paste it into the Claude Desktop config later.

If You Get “This app is blocked”

This means you ran the command without --client-id-file and gcloud tried to use its own default OAuth client, which Google has disabled for Analytics. Re-run the command, making sure --client-id-file="..." is included.

If You Get “Access blocked: [App name] has not completed the Google verification process”

You forgot to add yourself as a test user. Go back to Part 6 and add your email, then re-run the command.


Part 9: Install the MCP Server

The “MCP server” is the small program that translates between Claude Desktop and the Google Analytics API.

In PowerShell, run:

pipx run analytics-mcp --help

The first time this runs, it will take about 60 seconds as it downloads and installs the package. You’ll see output ending with something like:

Starting MCP Stdio Server: Google Analytics MCP Server

That’s it — it works. Press Ctrl+C to stop it (we just needed to confirm and pre-install). Future runs (including from Claude Desktop) will be instant because everything is cached.


Part 10: Edit the Claude Desktop Config File

This is the file where Claude Desktop learns about new MCP servers.

Open the File

  1. Press Windows key + R to open the Run dialog.
  2. Paste this and hit Enter: %APPDATA%\Claude
  3. A File Explorer window will open. Look for a file named claude_desktop_config.json.
    • If it exists: Right-click → “Open with” → choose Notepad (or VS Code if you have it).
    • If it doesn’t exist: Right-click in the empty space → New → Text Document. Rename it to exactly claude_desktop_config.json (make sure to remove the .txt extension — you may need to enable “File name extensions” in File Explorer’s View menu to see it).

Back It Up First

Before editing, make a backup. In the same folder, copy claude_desktop_config.json and paste it (it’ll create claude_desktop_config - Copy.json). If anything goes wrong, you can restore.

Edit the Contents

If the file is empty or brand new, paste this:

{
  "mcpServers": {
    "analytics-mcp": {
      "command": "pipx",
      "args": ["run", "analytics-mcp"],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "C:\\Users\\YOUR_USERNAME\\AppData\\Roaming\\gcloud\\application_default_credentials.json",
        "GOOGLE_PROJECT_ID": "your-project-id-here"
      }
    }
  }
}

If you already have other MCP servers in the file, add the analytics-mcp block as a new entry alongside them (inside the same mcpServers braces). Don’t forget the comma between entries. Example with two existing servers:

{
  "mcpServers": {
    "some-existing-server": {
      "command": "...",
      "args": ["..."]
    },
    "another-existing-server": {
      "command": "...",
      "args": ["..."]
    },
    "analytics-mcp": {
      "command": "pipx",
      "args": ["run", "analytics-mcp"],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "C:\\Users\\YOUR_USERNAME\\AppData\\Roaming\\gcloud\\application_default_credentials.json",
        "GOOGLE_PROJECT_ID": "your-project-id-here"
      }
    }
  }
}

Fill In Your Values

You need to change two things in the analytics-mcp block:

  1. GOOGLE_APPLICATION_CREDENTIALS: Replace YOUR_USERNAME with your actual Windows username. To find it, in PowerShell type: echo $env:USERNAME So if your username is john, the path becomes: C:\\Users\\john\\AppData\\Roaming\\gcloud\\application_default_credentials.json Critical: Use double backslashes (\\) instead of single backslashes (\). JSON requires this.
  2. GOOGLE_PROJECT_ID: Replace your-project-id-here with the project ID you wrote down in Part 4 (it looks like claude-mcp-478616). If you forgot it, go to https://console.cloud.google.com and look at the project picker — the ID is shown under the name.

Common JSON Mistakes That Will Break Everything

JSON is strict and unforgiving. The most common ways to break the file:

  • Missing comma between entries inside mcpServers.
  • Extra comma after the last entry (don’t put a comma after the last item in a list).
  • Single backslashes in Windows paths (use \\ not \).
  • Curly braces or square brackets that don’t match.
  • Smart quotes (") instead of straight quotes (") — this happens if you paste from Word or similar. Use a plain text editor like Notepad or VS Code.

Before saving, paste the file contents into https://jsonlint.com and click “Validate JSON”. If it says “Valid JSON”, you’re good. If not, fix the error it points to.

If Claude Desktop sees broken JSON in this file, it will silently delete all your MCP servers on next launch. This is why we backed up first.

Save the File

Save the file (Ctrl+S in Notepad). Make sure the filename is still claude_desktop_config.json and not claude_desktop_config.json.txt.


Part 11: Restart Claude Desktop

This is the step people miss most often. Just closing the window is not enough — Claude Desktop keeps running in the background.

  1. Look at the system tray (bottom-right of your screen, near the clock). You may need to click the small ^ arrow to see hidden icons.
  2. Find the Claude icon, right-click it, and choose Quit.
  3. Wait 5 seconds.
  4. Reopen Claude Desktop from the Start menu.

Part 12: Test It

In Claude Desktop, start a new conversation and ask:

List my Google Analytics accounts.

Claude should respond by calling the MCP server and listing your accounts and their properties. You can then ask follow-up questions like:

Show me last 30 days of sessions for [your-website-property].

Compare this month vs last month for [property] by traffic source.

What were the top 10 pages on [property] last week?


Troubleshooting

“Pipx not found” or the MCP server doesn’t appear in Claude

Claude Desktop sometimes can’t find pipx on its own. Replace "command": "pipx" in the config with the full path. To find the full path, in PowerShell run:

where.exe pipx

Copy the output (something like C:\Users\YOU\AppData\Roaming\Python\Python312\Scripts\pipx.exe) and put it in the config — remember to escape backslashes (\\ not \):

"command": "C:\\Users\\YOU\\AppData\\Roaming\\Python\\Python312\\Scripts\\pipx.exe"

“invalid_grant: Bad Request” when running a query

The credentials file is no longer valid — usually because the refresh token expired (Google expires them after about 6 months of disuse) or got revoked.

Fix: Re-run the login command from Part 8 (the long gcloud auth application-default login --client-id-file=... one). Then fully restart Claude Desktop (right-click tray icon → Quit, then reopen).

Server times out at startup (60-second timeout in logs)

If you look at the log file at %APPDATA%\Claude\logs\mcp-server-analytics-mcp.log and see lines like creating virtual environment... followed by a timeout, your config is probably using --spec git+... style args.

Fix: Open the config and make sure the args line for analytics-mcp is exactly:

"args": ["run", "analytics-mcp"]

Not the longer ["run", "--spec", "git+https://...", "..."] form. The latter forces a fresh install on every Claude Desktop launch, which times out.

All my MCP servers disappeared after restart

Your config file has invalid JSON. Claude Desktop silently resets the file when it can’t parse it.

Fix: Restore from the backup you made. If you didn’t make one (next time, do!), rebuild the config carefully. Use https://jsonlint.com to validate before saving.

“Python was not found” warnings when running gcloud

These are harmless Windows messages from a feature called “App Execution Aliases” interfering with gcloud. You can ignore them. If they really bother you, go to Windows Settings → Apps → Advanced app settings → App execution aliases, and turn off the python.exe and python3.exe entries.

PowerShell complains about commas in –scopes

PowerShell sometimes mis-parses commas. Always wrap the value in double quotes:

--scopes="scope1,scope2"

Not:

--scopes=scope1,scope2


What If I Want to Update the MCP Server Later?

The MCP server is updated by Google occasionally. By default, pipx caches the version you first installed and uses it indefinitely. To force an update:

In PowerShell:

pipx run --no-cache analytics-mcp --help

This forces pipx to check for and install the newest version. After the new version installs, fully restart Claude Desktop.


Glossary

  • MCP (Model Context Protocol): An open standard that lets AI assistants like Claude talk to external programs and data sources.
  • MCP server: A small program that exposes a specific data source or tool (like Google Analytics) to Claude.
  • OAuth: A standard way of granting limited access to your data to a third-party app without giving them your password.
  • Application Default Credentials (ADC): A credentials file that Google libraries automatically look for to authenticate.
  • pipx: A Python tool for installing and running command-line Python programs in isolated environments.
  • PyPI: The Python Package Index — the central repository where most Python programs are published.
  • Scopes: The specific permissions an OAuth credential grants (e.g., “read Analytics data” vs “edit Analytics settings”).
  • Test user: A Google account allowed to use an OAuth app that hasn’t been formally verified by Google.

Summary of Key “Gotchas”

If you remember nothing else, remember these — they’re the things that broke during setup:

  1. Always use --client-id-file with gcloud auth application-default login. Without it, you’ll get “This app is blocked” because gcloud’s default credentials no longer work for Analytics.
  2. Add yourself as a test user on the OAuth consent screen — otherwise sign-in is blocked.
  3. Use pipx run analytics-mcp in the config, not pipx run --spec git+.... The latter times out.
  4. Use double backslashes (\\) in Windows paths inside the JSON config.
  5. Fully quit Claude Desktop from the system tray before reopening — closing the window is not enough.
  6. Always back up the config file before editing — a JSON typo will wipe all your MCP servers.
  7. Validate JSON at https://jsonlint.com before saving the config.
Categories
computer engineering

How I Integrated Claude desktop with MCP Toolbox and BigQuery on Windows

Intro

Just days after Google Cloud rebranded the GenAI Toolbox for Databases to the MCP Toolbox for Databases, an exciting new capability appeared: support for BigQuery as a data source.

This is a big deal.

Why? Because it immediately unlocks three powerful advantages:

  1. BigQuery datasets are everywhere — from Google’s public datasets to private enterprise data, the ecosystem is rich and growing.
  2. The Model Context Protocol (MCP) has emerged as the go-to standard for connecting GenAI clients to real backend tools and data.
  3. By combining both, we can now connect GenAI clients that support MCP (like Claude) directly to BigQuery — and run live queries, interactively, in natural language.

Let’s walk through how to wire all this up — and get Claude querying BigQuery using the MCP toolbox.

After hours of trial and error, obscure errors, and a bit of CLI sorcery, I successfully configured Claude to work with the MCP Toolbox for querying BigQuery directly from Claude’s interface.

This post outlines the exact steps I followed, including key troubleshooting tips and configuration files. Hopefully, it saves you (or your future self) hours of confusion.The big issue was that i coudn’t find a proper example online for the scenario below:

  1. running MCP Toolbox locally
  2. connecting to BigQuery
  3. using MCP Toolbox from Claude Desktop (the exact config needed)

Tools Involved

  • Claude desktop app (Anthropic)
  • mcp-toolbox executable
  • BigQuery + service account credentials
  • Windows 10/11
  • PowerShell

Step 1: Setup Your BigQuery Credentials

First, create a service account in Google Cloud Console and download the JSON credentials file.

Then define it in the Claude configuration (see below) — this is what I ended up doing. Trying to setup a system environment variable or using the google cloud command line tools on my desktop, didn’t work for me, as Claude is not taking those in account when launching the MCP toolbox.


Step 2: Write Your tools.yaml File

In your mcp-toolbox directory (e.g. C:\projects\mcp-toolbox), create a tools.yaml file like this. Note that identation plays a crucial role and if you are not careful, errors will emerge.

sources: 
  my-bq-source:
    kind: bigquery
    project: evident-healer-380615

tools:
  search_release_notes_bq:
    kind: bigquery-sql
    source: my-bq-source
    statement: |
      SELECT
        product_name, description, published_at
      FROM
        `bigquery-public-data`.`google_cloud_release_notes`.`release_notes`
      WHERE
        DATE(published_at) >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)
      GROUP BY product_name, description, published_at
      ORDER BY published_at DESC
    description: |
      Use this tool to get recent Google Cloud release notes.

toolsets:
  my_bq_toolset:
    - search_release_notes_bq

Step 3: Update claude_desktop_config.json

Claude uses this config to launch MCP servers. On Windows, this file is located at:

shellCopyEdit%AppData%\AnthropicClaude\claude_desktop_config.json

Here’s the working configuration I used:

{
  "mcpServers": {
    "bigquery-mcp-toolbox": {
      "command": "C:/projects/mcp-toolbox/toolbox.exe",
      "args": [
        "--tools-file", "C:/projects/mcp-toolbox/tools.yaml",
        "--stdio"
      ],
      "env": {
        "BIGQUERY_PROJECT": "your_project_id_here",
        "GOOGLE_APPLICATION_CREDENTIALS": "C:/projects/claude-bq/your_credentials_file_here.json"
      }
    }
  }
}

⚠️ Make sure to use forward slashes (/) even on Windows paths.


Step 4: Launch Claude and Use Your Tool

  1. Open Claude normally
  2. Go to the “Tools” tab or use the @tool keyword in chat.
  3. Try invoking your tool by asking something like: @search_release_notes_bq Show me new GCP features

Common Pitfalls (and Fixes)

  • Missing --stdio flag: Without it, Claude can’t talk to the tool.
  • Wrong credential path: Backslashes (\) or typos will cause silent failures.
  • Missing env block in claude_desktop_config.json: Your service account won’t be picked up unless GOOGLE_APPLICATION_CREDENTIALS is passed explicitly.
  • Wrong JSON syntax: Use a JSON linter to validate claude_desktop_config.json.

✅ Success!

Once everything clicked into place, Claude started launching the BigQuery MCP toolbox without errors, and I could run SQL queries against BigQuery data from within the Claude chat window.

Here is an example of the result of a prompt such as

“can you plot the monthly revenue of my ecommerce store using bigquery data”?


📌 Final Thoughts

MCP is powerful but still evolving. Documentation is sparse, especially for Windows setups — so if you’re going down this path, be ready to debug. Hopefully, this post gets you much closer to the finish line.

Feel free to reach out or comment if you hit snags!

Resources:

Categories
Barbeque

Πικάνια στη σούβλα

Είναι η πρώτη μου απόπειρα για πικάνια στη σούβλα, στην ψησταριά υγραερίου Vanward Majesty S. Οι προηγούμενες δοκιμές ήταν στις μαντεμένιες σχάρες και μετά την 1η – 2η απόπειρα τα ψησίματα ήταν τέλεια.

Όπως θα δείτε και στο παρακάτω βίντεο, το ψήσιμο στη σούβλα έχει την πλάκα του, έχει την ευκολία του (με την έννοια ότι δεν χρειάζονται γυρίσματα με το χέρι και έλεγχος μην το κάψεις εξωτερικά), αλλά από την άλλη έχει και τις δυσκολίες του.

Οι βασικές δυσκολίες ήταν ότι:

  • για να χωρέσω μια ολόκληρη πικάνια στη σούβλα, χρειάστηκε να τα στριμώξω λίγο τα κομμάτια παραπάνω από ότι ήθελα (την έκοψα χοντρές φέτες)
  • οι αναφλέξεις ακόμα και με κλειστό καπάκι ήταν πάρα πολλές λόγω του ότι το κομμάτι είναι αρκετά λιπαρό. Αναγκάστηκα να σβήσω κάποιες φορές τους καυστήρες και γενικά τους δούλευα στο ελάχιστο σε ένταση

Στους περισσότερους οδηγούς που είχα βρει στο ίντερνετ, έλεγε ψήσιμο μιας ώρας περίπου. Η αλήθεια είναι ότι αν την άφηνα μια ώρα, πιστεύω ότι θα είχε γίνει κάρβουνο. Στην Vanward Majesty S με τους 3 καυστήρες αναμμένους στην ελάχιστη ένταση και με μισή ώρα ψήσιμο, μου βγήκε (very) well done.

H διαδικασία είναι πολύ απλή, έκοψα την πικάνια σε χοντρές φέτες και την πασπάλισα με χοντρό αλάτι με άρωμα λεμόνι. Οτιδήποτε άλλο, όπως πχ μαρινάρισμα, στην πικάνια θεωρώ ότι είναι αμαρτία, γιατί το κομμάτι αυτό έχει από μόνο του πολύ καλή και ιδιαίτερη γεύση.

Pros
  • πεντανόστιμη
  • γρήγορη
Cons
  • σχετικά ακριβό κομμάτι
  • πολύ λιπαρό
  • θέλει προσοχή μην το κάψεις
Categories
Analytics

Data Studio: How to apply the same filter across multiple data sources

One issue that you may have met in Data Studio, when working in reports with multiple data sources is filtering of similar data. You may have the same column (eg. country) in both data sources with the same contents, but creating and applying a filter for one of them, does not filter the others. So you have to reside to non optimal solutions such as using a second filter control for other components of the report.

The reason that this is not optimal should be obvious: imagine an example with 2 tables sourcing data from different systems (eg Google Analytics and internal CRM) where you want to filter users by country. You would have to create 2 filter controls in your report and anytime you needed to switch countries you would have to select the appropriate country in one after the other.

Luckily, there is a workaround for this, based on custom fields. When you create a custom field in a data source, you will notice that Google provides you with an ID for that field.

custom field ID in Google Data Studio

Unfortunately this is not the case with default (non custom fields). If your data sources are “default” (meaning as the relevant source provides them), in order for the following workaround to help, you need to enrich them with a custom field (on each data source). You may perfectly well just replicate the column you want “as is”. You will have 2 fields with the same values in each of your data sources, but I guess you can live with that. The gains from not having to work with multiple silly filters in your report, will compensate you. A simple way to achieve that for example if we are talking about a text field, is to use this formula for the custom field that copies it:
CONCAT(source dimension,”). (eg CONCAT(country,”). Then copy the field ID that Google gave to your new custom field.

Next step is to go to your other data source and do the same. Just be careful, the first time you create the dimension on the second data source, you will have your only chance to use the same field ID. Google will auto provide you with a different field ID, but the first time you are creating it, the actual field ID is editable!

field ID on a new calculated field is editable on create

Use this chance an past into the field ID the field ID you copied from the previous data source. You are set! From now on, any filter control that you will enter on the report that uses an of those calculated fields, will control and filter data across your data sources!

PS: It goes without saying, that the actual data in the columns need to match as well, at least for some of the records, for this workaround to be meaningful. Eg if you create 2 custom country fields and you try to filter by country = Greece, while the second datasource does not have Greece as a value in the custom field, then it will not make sense to have it.

Categories
Barbeque

Κοτόπουλο στη σούβλα στην ψησταριά Υγραερίου

Στο σημερινό post θα σας δείξω πώς έφτιαξα Κοτόπουλο στην σούβλα στην ψησταριά Υγραερίου Vanward Majesty S.

H σούβλα είναι έξτρα εξάρτημα που πωλείται ξεχωριστά, αλλά υπάρχει έκδοση προσαρμοσμένη για την εν λόγω ψησταριά. Η ίδια η ψησταριά έχει τις υποδοχές για την αναμονή της σούβλας.

Η όλη διαδικασία ήταν πολύ εύκολη:

  • χρησιμοποίησα ένα μέτριο κοτόπουλο ~ 1.5 kg (την επόμενη φορά θα βάλω 2 κοτόπουλα , αφού χωράνε εύκολα, αλλά όχι μεγαλύτερα σε μέγεθος γιατί θα βρίσκουν στο καπάκι της ψησταριάς)
  • το μαρίναρα με βούτυρο και Maggi νοστιμιά
  • εκτός από τα στηρίγματα που έχει η σούβλα, το έδεσα και με ένα σύρμα για επιπλέον ασφάλεια, για να μην γυρίζει / πέσει, αλλά και για να του μαζέψω λίγο τα πόδια / φτερά για να μην βρίσκουν στο καπάκι της ψησταριάς
  • το έψησα για 1 ώρα περίπου με κλειστό το καπάκι της ψησταριάς (εκτός από την ώρα που τραβούσα τα video 😀 )
  • οι καυστήρες ήταν στην αρχή και στο τέλος του ψησίματος και οι 3 στην μέγιστη ένταση
  • κατά την διάρκεια του ψησίματος ο μεσαίος καυστήρας ήταν στην ελάχιστη ένταση για να απόφύγουμε το κάψιμο της πέτσας και τις αναφλέξεις (τα καμμένα κομμάτια που φαίνονται στη φωτό είναι από τα επιπλέον υλικά με τα οποία άλοιφα το κοτόπουλο κατα την διάρκεια του ψησίματος (κυρίως η μαρινάδα από την Maggi νοστιμιά τα οποία με ένα απλό σκούπισμα έφυγαν – αλλά δεν σκέφτηκα να βγάλω καλύτερη φωτό)

Για την επόμενη φορά θα έκανα διαφορετικά:

  • θα έβαζα σίγουρα 2 κοτόπουλα γιατί αυτό εξαφανίστηκε πριν βγει από τη σουβλα
  • θα φρόντιζα η μαρινάδα να μην έχει στερεά κομμάτια μέσα για να μην μαυρίζουν / καίγονται

Categories
Barbeque

Pork and Chicken Skewers on Gas Barbeque

Last week we made some skewers on our Gas Barbeque. Skewers are very fast to cook although there are some tricks involved for perfect success.

  • We got a mix of chicken and pork meat. Chicken and Pork needs to be cooked well done, it is not like Beef that you can taste almost raw
  • The good thing is that since the slices on the skewer are thin, this wont take a lot of time
  • I grilled them for about 15 minutes with the lid closed for most of the time
  • I preheated the BBQ at 250 degrees Celcius with the gas turned to max and then lowered all switches to the lowest level to put the meat on the grates
  • I had to cook them at indirect heat at some points, because the juices from the meat caused a lot of flames in the BBQ and I did not want to burn them. So what I did was turn of 1/3 gas tubes and cook the skewers above the tube that was turned of with the heat of the other 2 ones
  • Lessons learned: next time I will use metal skewers
  • I will also to get a special grate for skewers because the way I put them directly on the cast iron grates, made it difficult to handle as lots of meat slices fell apart