# Testing by text pattern

{% hint style="info" %}
This type of testing does **not** apply to RSAs. It works only for DSAs, Call ads and the legacy ETAs.
{% endhint %}

Multi ad group testing using text patterns helps you to split-test **sets of ads** across multiple ad groups or campaigns. Each set shares a common text patterns in headline 1, headline 2 and so on, which is matched in the same location for all ads.  Hence, this type of tests are applicable to ads that have a fixed headline 1 (which is not the case for RSAs).

This approach can be useful for testing how well specific messages perform. It's also useful for low-volume accounts that don’t accrue enough data to reach statistical significance with [single ad group testing](/tools/ad-testing/single-ad-group-testing.md).&#x20;

### **How to run multi ad group tests**

#### Manual tests

<figure><img src="/files/nTwOVPp10kneifab6eiG" alt="" width="392"><figcaption></figcaption></figure>

You can run multi ad group tests as often as you need. Go to **Ad testing** > **Multi ad group** > **Test by text patterns**:

1. Select your campaigns and the date range for this test. A common date range means Adalysis will calculate a date range during which all ads within the test were active.
2. Specify the location within the ad where the pattern should be matched. One location applies to the whole test.
3. Specify the pattern you want to test. Patterns can be whole text, or use wildcards (e.g. *Find a plumber in \**). Click the folder icon to see the most common patterns across your chosen set of campaigns and locations.
4. Click **Find current winners**. &#x20;
5. If you want Adalysis to run this test automatically, click **Save & run this test daily.**

To familiarize yourself with this approach, click **Run a sample multi ad group test** for a sample test result from one of your campaigns.

{% hint style="warning" %}
Please be careful when using a **common test date range**. If one matching ad out of hundreds was enabled only a few days ago, it will cause the whole test to run using only the last few days of data.
{% endhint %}

#### Daily test runs

Unlike single ad group testing, you'll need to define your multi ad group test before Adalysis can automate it for you. You can save your manual tests by clicking **Save & run this test daily** or choose **Define an automated test.**

#### Understanding the test result data

Once you open the test result details, you will see the aggregate performance of each pattern (over the date range used) and the confidence the algorithm has in each of the metrics. You'll also see performance boost projections based on pausing all ads with the losing pattern(s).

{% hint style="info" %}
Click on a pattern to see your test results.&#x20;
{% endhint %}

<figure><img src="/files/TO6NNQFBFixTHKLMgFy5" alt=""><figcaption></figcaption></figure>

### **Bulk actions**

#### **Pausing losing ads**

Click the **Pause** button to pause all ads with the losing pattern for a specific metric. The test is then marked as archived and you can always find it under the **Archived test results** tab. &#x20;

<figure><img src="/files/Ok96N5s1fOyqxzLaszn5" alt=""><figcaption></figcaption></figure>

#### Pausing and replacing losing ads

<figure><img src="/files/ajmP4WUjpeCpO3coQUsE" alt=""><figcaption></figcaption></figure>

Click **Pause & create new ads** to pause the losing ads and automatically create replacements. You can specify a new pattern to replace the losing text in your replacement ads. **Preview new ads** lets you check your ads before going ahead.

**Please don't** **use wildcards in the replacement patterns**. For example:

* The original test pattern includes a wildcard, e.g. Find a plumber in \*. This will match ads like Find a plumber in Florida or Find a plumber in LA.
* Your replacement pattern should match Find a plumber in, e.g. Call a plumber in.
* The new ads will be created using the full text Call a plumber in Florida or Call a plumber in LA. The wildcard text in the old ads is preserved.&#x20;

#### **How pattern matching works in multi ad group testing**

| **Pattern**   | **How ads are matched to the pattern**                                    |
| ------------- | ------------------------------------------------------------------------- |
| abc           | **abc** exists exactly as is (with no additional text).                   |
| \* abc        | **abc** exists at the end of the text.                                    |
| abc \*        | **abc** exists at the beginning of the text.                              |
| abc \* xyz    | **abc** exists at beginning and **xyz** at end, with any text in between. |
| \* abc \* xyz | **abc** exists anywhere before xyz. **xyz** exists at end.                |
| abc \* xyz \* | **abc** exists at beginning. **xyz** anywhere after abc.                  |
| !!abc         | **abc** doesn't exist as is (or use a wildcard \* before/after abc)       |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.adalysis.com/tools/ad-testing/multi-ad-group-testing/testing-by-text-pattern.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
