# Trending

Guide to the Trending Tab in Compass

{% embed url="<https://www.youtube.com/watch?ab_channel=CompassNFT&v=r1SZc-m_NZY>" %}
Compass Trending Page Tutorial
{% endembed %}

Compass' [Trending tab](https://compass.art/collections/trending) provides insights into the most popular NFT projects within a specified time period. It's designed to help users get up to speed on what NFT collections are hot right now.

### Viewing Project Information

The [Trending tab](https://compass.art/collections/trending) provides a wealth of information about each project:

* **Mint date**: The date the token was minted.
* **Token amount**: The quantity of tokens available for the project.

{% hint style="info" %}
**Tip:** You can favorite any project to add it to your [Watchlist tab](/collections/collection-watchlists), helping you keep track of projects you're interested in.
{% endhint %}

By hovering over a collection name and clicking on the three dots, you can access additional relevant links such as:

* OpenSea
* LooksRare
* Genie
* EtherScan
* The project's website (if available)

### Understanding and Using Floor Price

Floor price is a critical piece of information displayed on the Trending tab. This price is the lowest entry price for any project, which can be very helpful when evaluating potential investments.

{% hint style="info" %}
**Note:** You can sort the columns in ascending or descending order by using the arrow at the top of each column.
{% endhint %}

### Examining Volume Chart

To the far right of the Trending tab, you'll find the volume chart. This graph shows the sales for each project every three minutes, offering a real-time look at project performance.

### Changes from Last period

Each column in the Trending tab also displays the change from the last period. This can provide valuable insight into how the NFT market is shifting.

### Customizing Your View

To better suit your needs, the Trending tab can be customized by clicking the gear button <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FHnnfEOjRcZCTrs3r4Uum%2FCleanShot%202023-06-12%20at%2017.12.45%402x.png?alt=media&amp;token=91a043d0-5991-4164-b208-84a9535bd607" alt="" data-size="line"> in the top right corner. Here, you can toggle on or off any option.

{% hint style="info" %}
**Tip:** Many users prefer to move the floor price to the front for better visibility of their potential entry price for any project.
{% endhint %}

### Checking Gas and ETH Price Information

In the bottom left corner of the Trending tab, you can view relevant information such as the current gas price, gas presets, and the ETH price.

You also have the Profit Calculator <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FZJ0EGrWsXHeOhdsfYrma%2FCleanShot%202023-06-12%20at%2017.14.09%402x.png?alt=media&amp;token=fa070d90-caa5-45ac-9717-60a0652c11f5" alt="" data-size="line"> that calculates a selling/buying price if you want to break even on a flip after gas costs and fees.

That's a quick overview of the Compass Trending tab! Use this tool to stay on top of the NFT market and make well-informed investment decisions. Thanks for reading.


# Minting Now

Guide to the 'Minting Now' Section of Compass

{% embed url="<https://www.youtube.com/watch?ab_channel=CompassNFT&v=Yapc59k4T94>" %}
Compass Minting Now Page Tutorial
{% endembed %}

The [Minting Now](https://compass.art/collections/minting) section in Compass provides real-time data about the NFT collections that are currently minting. This guide will help you understand and navigate this tab.

### Accessing the 'Minting Now' Section

1. Click 'Collections' in the main menu.
2. Select 'Minting Now' from the dropdown.

### Interpreting the Information

Based on the selected period, the 'Minting Now' section displays the collections with the highest number of mints during that timeframe. Each collection listing offers a variety of details:

* **Tokens in the Collection**: This shows the total number of tokens in a particular collection.
* **Collection Status (Revealed or Not)**: Indicates whether the collection has been revealed.
* **Relevant Links**: Provides quick access to relevant resources related to the collection.

Hovering over a collection will reveal additional details:

* **Mints in the Selected Period**: Displays the number of mints that have occurred during your chosen period.
* **Total Mints**: Shows the total number of mints for the collection to date.
* **Unique Minters**: Indicates how many unique wallets (or minters) have minted the collection within the selected period.
* **Average Price**: Displays the average price paid for the mints. If you hover over this, it will show the average gas spent.
* **Mints per Hour**: Shows the average number of mints happening per hour for the collection since its release.

The pace of minting is represented by the following icons:

* 🔥 A flame icon means the collection is minting at a very high speed.
* 🐇 A rabbit icon indicates a fast pace.&#x20;
* 🐢 A turtle icon indicates a slow pace.
* 💤 The 'Z's icon represents a very slow pace.

Next to these icons, you'll find the date when the collection first started minting.

{% hint style="info" %}
**Tip:** This feature can be particularly useful if you're trying to mint from a 'stealth mint' collection, i.e., a collection that's intentionally minted without a formal announcement. The 'Minting Now' section will display the collection as soon as it starts minting.
{% endhint %}

To mint a collection, simply hover over the desired collection and click either the contract to mint from the contract directly or the website to mint from there.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FmGt01cHfGcls9P3wD9ki%2FCleanShot%202023-06-12%20at%2017.16.17%402x.png?alt=media&amp;token=5bb34f7f-30f7-4da9-b8af-4ca960bfdbca" alt=""><figcaption></figcaption></figure>

By leveraging the 'Minting Now' section, you can stay updated about new mints and make well-informed decisions about your NFT investments. Thanks for reading!


# Collection Watchlists

Guide to Collection Watchlists on Compass

{% embed url="<https://www.youtube.com/watch?ab_channel=CompassNFT&v=EsqJ_7mJT04>" %}
Compass Watchlist Tutorial
{% endembed %}

[Compass Watchlists](https://compass.art/collections/watchlists) let you track, analyze, and automate trades on a list of collections.

{% hint style="info" %}
 **Tip:** Use watchlists to track Bluechip collections, Alpha Groups, Analytics tools etc. in themed groups. 
{% endhint %}

You can create watchlists in two ways:

**Creating watchlists from the** [**Watchlist tab**](https://compass.art/collections/watchlists)**:**

1. Navigate to Collections > [Watchlists](https://compass.art/collections/watchlists).
2. Click on Create Watchlist <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FBBnWY2nPX23MsCHiMcVn%2FCleanShot%202023-06-12%20at%2017.18.26%402x.png?alt=media&amp;token=684253f7-be34-40f1-b3b3-5d9d27a7587f" alt="" data-size="line">.
3. Name the watchlist.
4. Search for the collections you want to add and click their checkbox (you can look up more than one collection).
5. Add the selected collections to your watchlist.

**Creating watchlists from a** [**Collection Analytics**](https://compass.art/collections/0x8a90cab2b38dba80c64b7734e58ee1db38b8992e/analytics) **page:**

1. Go to any collection’s [analytics page](https://compass.art/collections/0x8a90cab2b38dba80c64b7734e58ee1db38b8992e/analytics).
2. In the top right, click on 'Watchlists' <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FzBtg3vq29zatewmRTxgO%2FCleanShot%202023-06-12%20at%2017.19.59%402x.png?alt=media&amp;token=951476a7-8d40-4f59-8fc6-25db42c21683" alt="" data-size="line">.
3. Click on 'Add to New Watchlist' or select the watchlist you want to add it to.
4. To view a watchlist, click the box icon to the right of the watchlist.

{% hint style="success" %}
🤖 **Automate with watchlists**: You can create Automations that add and remove collections from a watchlist based on custom criteria.
{% endhint %}

Similar to [Wallet Groups](/wallets/wallet-groups), Collection Watchlists show an aggregated view of collections in the watchlist. It highlights general market trends and sentiments for that watchlist's collections like Combined Volume, Sellers and Buyers, and Combined Market Cap.

You can remove collections from watchlists in two ways:

**Removing collections from watchlists from the 'Watchlist' tab:**

1. Click on any of your watchlists.
2. In the top right corner, click the 'Edit' button.
3. To the far right of each collection, click the 'Remove' button to remove it from the watchlist.

**Removing collections from the 'Collection Analytics' page:**

1. Go to any collection’s analytics page.
2. In the top right, click on 'Watchlists'.
3. Deselect the watchlist you want to remove the collection from.


# Token Window

The token window appears whenever you click on an NFT on compass. It shows the general info, details, traits, holder, transaction history, etc. of an NFT. The modal lets you purchase the NFT.

### What's on the token window?

* Token name and ID
* External links to marketplaces and Etherscan
* Rarity rank. See how we calculate rarities [here](https://blog.compass.art/how-to-calculate-nft-rarity-83c0e1c9c4bf).

{% hint style="info" %}
**Tip:** Hover over the collection name to see the collection floor.
{% endhint %}

{% hint style="info" %}
**Tip:** Hover over the Owner to see the portfolio value.
{% endhint %}

#### Traits

The traits grid shows all the traits of an NFT along with relevant info.

* **Rarity Percentage** shows what percentage of the total supply has the trait. Hover over this to see the number of tokens with the trait. The rarest trait of the NFT is highlighted with orange.
* **Floor** shows the cheapest listing for this trait currently. The trait with the highest listed floor has it highlighted with green.

{% hint style="info" %}
**Tip:** If the same trait has both the orange and the green highlight, that means the trait is likely valuable and merits further investigation.
{% endhint %}

#### Activity

The activity history shows the full history of a token including Bids, Listings, Sales, Transfers and Mint. Just like all other activity tables on Compass, this one supports multiple filters with and/or logic.

#### Activity Chart

The Activity Chart shows all activity data of the token visually on a scatterplot. You can click on the activity types to hide/show them. Hover over dots to see more info about the activity.

{% hint style="info" %}
**Tip:** Click and drag to zoom in on the Activity Chart.
{% endhint %}

{% hint style="info" %}
**Tip:** Use the activity chart to see whether the owner is gradually decreasing the listing price of a token and get it at a lower price.
{% endhint %}

{% hint style="info" %}
**Tip:** The activity chart visualizes bidding wars on valuable tokens.
{% endhint %}

{% hint style="info" %}
**Tip:** To save time when looking up tokens, you can directly enter a token into the main search bar on the top of the page, e.g. Doodles 4121.
{% endhint %}

#### Pending Transactions

Here you can see purchase transactions that are just getting executed for the token. Useful when you want to outgas multiple wallets or are trying to scoop up an underpriced listing.

#### Metadata

Here you can find the raw metadata for the token, containing all trait data.


# Collection Activity

The [Collection Activity](https://compass.art/collections/0x8a90cab2b38dba80c64b7734e58ee1db38b8992e/activity) tab provides an overview of all Bidding, Listing, Minting, Purchase, and Transfer activities within a specific collection. This comprehensive display allows users to analyze the trading history of a collection in detail and identify specific trends or patterns.

{% hint style="warning" %}
**Good to Know:** Collections with a high volume of activity, particularly those subject to automated bidding and listing, may experience slower load times due to numerous rows of data. If the activity rows are not loading, click 'Filters', select the 'Transaction Type' filter, and disable 'Bids' and 'Listings'.
{% endhint %}

{% hint style="success" %}
**Unique to Compass:** The [Collection Activity](https://compass.art/collections/0x8a90cab2b38dba80c64b7734e58ee1db38b8992e/activity) tab offers both powerful filtering capabilities and the full history of all activity types. This allows you to examine a collection's trading history for highly specific scenarios.
{% endhint %}

In the case of bids, you can differentiate collection, trait, and token bids:

* Collection bids show the collection name in the 'Item' column.
* Trait bids display a trait in the 'Item' column.
* Token bids present a token with the #tokenID in the 'Token' column.

For bids, listings, and sales, you can view the difference between the bid, listing, or sale price and the collection floor at the time of the transaction.

{% hint style="info" %}
**Tip:** Filtering for a specific token ID allows you to track the history of a token within the collection, including how bids for the token increased, who purchased it, any transfers between wallets (if looking at a wallet group), listings and re-listings at lower prices, and final sales.
{% endhint %}

{% hint style="info" %}
**Tip:** Adding both 'Trait' and 'Type: Sales only' filters lets you see how much above floor a particular trait sells for typically.
{% endhint %}


# Collection Profit Leaderboard

The [Collection Profit Leaderboard](https://compass.art/collections/0xda2686fd32c6b74d55605cfb48bef331771e7fc6/leaderboard) tab provides an extensive overview of the top-performing wallets and their profits within a specific collection.&#x20;

For each wallet, the table displays the total profit, average profit per flip, number of tokens flipped, purchase price, sale price, date and time of the first purchase, average holding period, and a link to view the wallet's flips filtered for the collection in question.

The information presented in the table allows users to analyze the performance and strategy of the top wallets within the collection, providing valuable insights for traders:

1. **Wallet:** The wallet's address or ENS name.
2. **Total Profit:** The total profit earned by the wallet from flipping tokens in the collection. Also shows the average profit per flip, calculated by dividing the total profit by the number of tokens flipped.
3. **Purchases:** The total number of tokens acquired then sold by the wallet. Hover over the colored pills to see how the wallet acquired their tokens.
4. **Purchase Price:** The minimum, maximum, and average purchase prices of the tokens flipped.
5. **Sale Price:** The minimum, maximum, and average sale prices of the tokens flipped.
6. **First Purchased At:** The date and time when the wallet made its first purchase in the collection.
7. **Avg Held For:** The average number of days the wallet held the tokens before selling them.
8. **View Flips:** A link to view the wallet's flips for the collection, allowing users to analyze the wallet's trading history and strategy in more detail.

By examining the 'Collection Profit Leaderboard' table and venturing into the individual wallet flips, users can better understand the performance and strategy of top traders in a collection and apply this knowledge to their own trading decisions.


# Collection Tokens

The [Collection Tokens tab](https://compass.art/collections/0x8a90cab2b38dba80c64b7734e58ee1db38b8992e/tokens) in Compass allows you to browse and filter tokens within a collection using and/or filtering logic. The grid view showcases the NFTs in a collection for easy access and comparison.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FYdjXSknSHM1c6mANf5Du%2FCleanShot%202023-06-12%20at%2016.50.35%402x.png?alt=media&amp;token=a7b976de-9f7f-4c40-921d-577949e34a8a" alt=""><figcaption></figcaption></figure>

Clicking on an NFT will bring up the Token window, providing more information and options for the selected token. You can learn more about the Token window here.

#### Rarities

Rarities are calculated based on the traits of each token within a collection. You can learn more about how rarities are calculated \[here: \[Link]].

To refresh the reveal status of tokens that might still be showing as unrevealed, simply click the “Refresh Items” button on the top right.

#### Filtering

With Compass' complex filtering logic options, you can easily create custom filters to narrow down your search and find tokens that meet specific criteria.

{% hint style="info" %}
**Tip:** To search for a specific token, simply filter for its token number.
{% endhint %}

{% hint style="info" %}
**Tip:** To browse tokens marked as stolen on OpenSea (suspicious tokens), enable the "Flagged Tokens" filter.
{% endhint %}

{% hint style="info" %}
**Tip:** To see trait floors, enable the Trait filter and sort by Price ascending.
{% endhint %}

**Using and/or filters:**

To use and/or filters, first enable the filters you want to apply and choose whether you want to combine them with an "and" or "or" logic.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FOoGWNIG6ThupjfBIPB6M%2FCleanShot%202023-06-12%20at%2016.51.51%402x.png?alt=media&amp;token=33b17beb-75d7-46c5-b547-e0ce65671943" alt=""><figcaption></figcaption></figure>

**Sorting**

You can sort the tokens in various ways, such as by rarity, price, or recent activity.

#### Sweeping

Sweeping in Compass allow you to efficiently buy multiple tokens from the floor.

{% hint style="info" %}
Tip: Click on the three dots next to a token to see its external marketplace links.
{% endhint %}

{% hint style="info" %}
Tip: To save time when looking up tokens, you can directly enter a token into the main search bar on the top of the page, e.g. Doodles 4121.
{% endhint %}


# Collection Top Holders

Guide to the Collection Top Holders page on Compass

{% embed url="<https://www.youtube.com/watch?ab_channel=CompassNFT&v=aY_md94N8hY>" %}
Collection Top Holders
{% endembed %}

The Holders tab in Compass provides insights into how NFTs from a specific collection are distributed among different wallets. This guide will explain how to access and interpret this data.

### Accessing the Holders tab

To get to this, click [`Collections`](https://compass.art/collections/trending), then choose the collection you're interested in. To view the holder's analytics, simply click [`Holders`](https://compass.art/collections/0xda2686fd32c6b74d55605cfb48bef331771e7fc6/holders). If the collection is not immediately visible, you can use the search function.

### Understanding the Holders tab

Once in the Holder's Analytics section, you'll see several pieces of information:

* **Unique Wallets**: The number of distinct wallets holding tokens from the collection.
* **Bluechip Holders**: The percentage of holders also holding a token from a bluechip collection. Bluechip collections are: Doodles, Clone X, Azuki, BAYC, MAYC, CryptoPunks, Cool Cats, CyberBrokers, World of Women, VeeFriends, CrypToadz, Meebits, Moonbirds, Neo Tokyo Citizens, Cyberkongz.
* **Wallets Holding Single Item**: The proportion of wallets holding just one item from the collection.
* **Average balance per wallet**: The average number of NFTs held by each wallet.
* **Graphs**: There are two graphs, 'Holders Over Time' and 'Average Balance Over Time,' viewable on a one-day or one-hour scale.
* **Top holders**: This table displays the wallets with the most tokens, the number of tokens they hold, and the percentage of total supply they possess. It also indicates how their balance has changed over the past 6 hours, one day, three days, and seven days.

### Creating a wallet group from the top holders of a collection

You can create a wallet group of the top holders of a collection by clicking the create group above the top holders list. You can then create automations on this wallet groups like copy trading or custom alerts. The limit on the number of holders in a group is 50 wallets.

Tip: Use wallet groups made up from the top holders of a collection to track the trading decisions of paid alpha groups without joining them.

### Using Holder's Analytics to make trading decisions

The Holder's Analytics page can be a valuable tool for evaluating a collection's distribution and market trends.

* **Unique wallets vs. total supply**: A closer ratio between unique wallets and total supply is generally better, indicating a wide distribution of the collection.
* **Single-item holders**: A higher percentage suggests a higher holder ratio, which can be favorable. This is because holders with just one item are less likely to sell, whether the price goes up or down.
* **Holders over time**: Ideally, this should increase as frequently and significantly as possible, as it directly relates to unique wallets.
* **Average balance over time**: This number should decrease over time, moving toward an average balance of one per wallet, indicating a high holder ratio.
* **Top holders**: Observing the buying and selling patterns of 'whale' wallets (those holding a significant portion of the collection) can give an indication of the collection's market sentiment. For instance, a lot of selling (indicated by red numbers) might suggest it's not the best time to buy, while a lot of buying (green numbers) could suggest the opposite.

Remember, these metrics are indicators and not definitive measures of a collection's success or future performance. They should be used as part of a broader strategy for making informed decisions about NFT investments.


# Collection Mint History

Guide to the Collection Mint page on Compass

The Mint tab within a collection in Compass provides insights on the minting process of an NFT collection. This guide will walk you through how to access and interpret the data.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FO2tZ9d0E1akN2ZzCbGX6%2FCleanShot%202023-06-12%20at%2016.56.24%402x.png?alt=media&amp;token=fbeef8c2-84ae-4229-af97-5715f0aef0a4" alt="" width="563"><figcaption><p>Collection Mint History</p></figcaption></figure>

### Accessing Mint Analytics

To navigate to this, click [`Collections`](https://compass.art/collections/trending), then select the collection you want to analyze. Click [`Mint`](https://compass.art/collections/0x8a90cab2b38dba80c64b7734e58ee1db38b8992e/mint) to access the Mint Analytics.

Like other sections within collection analytics, you'll see the collection name, contract address, contract deployment date, total tokens on the contract, royalties, reveal status, a brief description, and some relevant links.

### Understanding the Mint Analytics

The Mint Analytics section displays several useful pieces of information:

* **Total minted**: The total number of NFTs minted from this collection.
* **Mint price**: The price for which these NFTs were initially sold.
* **Total value**: The total ETH the project owners received from the mint. Calculated as total minted times mint price.
* **Median tokens per transaction**: The average number of tokens minted per transaction.
* **Peak mints per hour**: The maximum number of mints that occurred in a given hour.
* **Mints over time (bar graph)**: A graphical representation of the minting process over time.
* **Top minters**: Wallets that minted the most tokens from the collection.
* **Unique minters**: The total number of unique wallets that minted tokens from the collection.

\[Image: Screenshot of the Mint Analytics tab showing the mentioned fields]

### Interpreting Mint Analytics for Collection Assessment

The Mint Analytics page offers valuable data to evaluate the success of a collection's minting process.

* **Total minted vs. total supply**: A closer ratio between total minted and total supply is a positive sign, indicating high demand for the collection.
* **Mint price vs. current price**: Comparing the mint price with the current trading price can indicate the collection's price performance.
* **Median tokens per transaction**: This can give a rough idea of unique minter percentage or unique wallet distribution.
* **Peak mints per hour**: A higher number, relative to the collection size, is generally better as it signifies high interest in the collection. Note that this may vary if there was a whitelist mint.
* **Mints over time (bar graph)**: This chart shows the minting rate over time, providing insights into the collection's demand.
* **Top and unique minters**: Identifying the top minters and the number of unique minters can help gauge the distribution of the collection across wallets.

Keep in mind that these metrics are only indicators and not definitive measures of a collection's success. By understanding and interpreting these data points, you can make more informed decisions when participating in a mint or trading in the secondary market.


# Collection Analytics

Guide to the Collection Analytics page on Compass

{% embed url="<https://www.youtube.com/watch?ab_channel=CompassNFT&v=IXQTgX8lQ-4>" %}
Compass Collection Analytics Tutorial
{% endembed %}

The [analytics tab](https://compass.art/collections/0x8a90cab2b38dba80c64b7734e58ee1db38b8992e/analytics) within a collection in Compass provides valuable information for trading and investment decisions related to an NFT collection. In this guide, we'll explore how to navigate and interpret this data.

### Accessing Collection Analytics

To navigate to this, click [`Collections`](https://compass.art/collections/trending) and then select any collection you're interested in. You can also use the search bar to find a specific collection.

Once you've clicked into a collection, Compass will display information that stays constant regardless of the tab you're in within the collection. This includes the name, contract address, contract deployment date, token quantity in the collection, collection royalties, and whether it's revealed.

Reveal detection and status Compass automatically detects if a collection has started revealing by checking if the metadata of 5 random tokens is identical or not. This happens every five minutes if no one is subscribed to a reveal alert for the collection.

{% hint style="info" %}
**Tip:** To get notified instantly on Discord/Telegram when a collection starts revealing, click on <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FA0vKD5qBQz3ljzv9n8RP%2FCleanShot%202023-06-12%20at%2017.26.58%402x.png?alt=media&amp;token=9815d8f7-60f2-4869-a7f2-23f4a8c695d0" alt="" data-size="line"> to subscribe and select the channel you want to get notified on once the collection starts revealing. This way, you can start sniping underpriced tokens.
{% endhint %}

Add to watchlist The watchlist button adds the the collection to a watchlist. Learn more about watchlists here.

{% hint style="warning" %}
**Good To Know:** If you see a collection stuck at a partial reveal, click the <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FAECwzsqtz6gmQTwYHPOS%2FCleanShot%202023-06-12%20at%2017.28.14%402x.png?alt=media&amp;token=fddb1596-a20f-406d-934c-1d016d84a7b6" alt="" data-size="line"> button to the far right. This will reinitiate the reveal detection on Compass
{% endhint %}

{% hint style="warning" %}
**Good To Know:** If you see a collection with no profile or cover picture, click the <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2Fpq5L5C6gdOKSSyzw2tsc%2FCleanShot%202023-06-12%20at%2017.28.50%402x.png?alt=media&amp;token=4079681c-ec28-4a0b-9523-ac38f55e498f" alt="" data-size="line"> button to the far right. This will refresh the images on Compass
{% endhint %}

Refresh Buttons: The <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FAECwzsqtz6gmQTwYHPOS%2FCleanShot%202023-06-12%20at%2017.28.14%402x.png?alt=media&amp;token=fddb1596-a20f-406d-934c-1d016d84a7b6" alt="" data-size="line"> Button refreshes the token metadata pulled from the blockchain. This consists of the images of the tokens as well as the traits and their metadata.

The <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2Fpq5L5C6gdOKSSyzw2tsc%2FCleanShot%202023-06-12%20at%2017.28.50%402x.png?alt=media&amp;token=4079681c-ec28-4a0b-9523-ac38f55e498f" alt="" data-size="line"> button right below the “Refresh items” button refreshes the collection info pulled from OpenSea. This data consists of the cover image, collection description, links and royalty percentage.

### Understanding the Analytics Tab

The collection analytics page provides most of the trading-related information for a collection. There are two layouts: advanced and normal, both showing the same information in different ways.

On the analytics tab, you'll see:

* **Floor price**: The lowest price at which an NFT is listed for sale.
* **Top Bid**: The highest collection offer.
* **Tokens listed**: The number of tokens listed for sale from the collection.
* **Percent listed**: The percentage of the total supply listed for sale.
* **Average price**: The average price at which these NFTs are selling.
* **24h volume (ETH)**: The trading volume in Ethereum over the past 24 hours.
* **30d volume (ETH)**: The trading volume in Ethereum over the past 30 days.

{% hint style="success" %}
**Note:** All metrics are pulled from across four marketplaces: Opensea, Blur, Looksrare and X2Y2
{% endhint %}

Hovering over the Ethereum values will display their equivalent in USD.

#### Floor Price Chart

The Floor price chart displays the listed floor going back to the inception of the collection.

#### Listings Distribution Chart

Below these charts is the Listings Distribution Chart. This bar graph displays the number of listings at each price point, providing a helpful visual on where most listings are priced. If you hover over the columns, the total listings display the total count of tokens listed on all marketplaces up until that price-point. The Listings Distribution chart updates in real time.

Tip: Adjust the price grouping increments to get a better view of the listing walls.a

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FljKS63W9TkgGivc8Z9pD%2FCleanShot%202023-06-12%20at%2016.53.42%402x.png?alt=media&amp;token=8a149687-3f41-42c4-b9ef-fbfe79bdbba1" alt="" width="375"><figcaption><p>Listings Distribution Chart</p></figcaption></figure>

#### Sales and Listings Chart

The Sales and Listings Chart provides visual data for your chosen period. Clicking on 'Sales' or 'Listings' will only show that specific data. You can filter outliers to exclude higher price purchases that may skew analytics. Both the Sales and Listings scatter plots update in real time

On the bottom of the Sales/Listings scatter plot you’ll see bars representing the count of sales/listings in that period.

{% hint style="info" %}
**Tip:** Click on the Gear icon to color points by Rarity, Profit and loss, or Sale type.
{% endhint %}

{% hint style="info" %}
**Tip:** Click and drag on the Sales/Listings scatter plot to adjust the zoom.
{% endhint %}

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FrROzVxFw9DHREssWymXx%2FCleanShot%202023-06-12%20at%2016.55.24%402x.png?alt=media&amp;token=62c76a0d-c030-4ef3-a9f6-27a82e53e899" alt="" width="375"><figcaption><p>Sales/Listings scatter plot</p></figcaption></figure>

#### Live Feeds

Finally, there are two live feeds: **Listings** and **Sales**. Both can be sorted by date, price, and rarity. Listings are pulled in from OpenSea, Blur, X2Y2 and LooksRare, while sales are pulled in from the blockchain.

Listings with green dots are new listings while red dots represent listings whose price has been adjusted lower. Listings that have a pending transaction will have a yellow loading icon appear

Sales with a blue dot are filled listings while yellow dots are filled offers.  Tip: Use filters to filter for listings/sales with specific Traits, prices and Rarity rank ranges.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2Ft0qpqAuxWsV5P08yB4vH%2FCleanShot%202023-06-12%20at%2016.52.53%402x.png?alt=media&amp;token=35efbe3b-5d2f-4c63-ad44-aaf780049486" alt="" width="563"><figcaption><p>Live Feeds</p></figcaption></figure>

### Using the Analytics Tab for Trading

The analytics tab is a versatile tool for various trading strategies, particularly swing trading, as it provides real-time updates on floor price, percent listed, volume, and new listings.

{% hint style="info" %}
**Note:** Compass features a one-click buy feature. Clicking the green button will initiate a MetaMask transaction to purchase that NFT in one click.
{% endhint %}

By observing live listings and sales feeds, you can gauge if more listings are being added than sales, which may indicate price trends. Similarly, analyzing the Sales and Listings Chart can help predict price movements.

The Floor Price and Median Price Chart allows you to evaluate if your potential purchase is priced favorably compared to past prices. The Listings Distribution Chart then helps visualize how many sales need to occur before hitting a certain price point.

{% hint style="info" %}
**Tip:** While the information provided by the analytics tab can greatly inform your trading decisions, remember that price movements aren't guaranteed.
{% endhint %}


# Getting started with Wallets

Guide to getting started with Wallets on Compass

Understanding Wallet Analytics with Compass

Compass provides powerful tools to understand and analyze any wallet's trading style and track record. This guide will help you learn how to utilize these tools effectively.

### Historical Profitability

You can view a wallet's historical profitability. This feature provides insight into the financial performance of the wallet over time.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2F8PvFEhzhHsoU8TH9niU1%2FCleanShot%202023-06-12%20at%2015.03.46%402x.png?alt=media&amp;token=c3e50933-1a2c-414b-9a70-f6c5feb20741" alt="" width="563"><figcaption></figcaption></figure>

### Grouping Wallets

Compass allows you to group multiple wallets into a single entity. This feature can be useful when managing multiple wallets or tracking the combined performance of several wallets.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FQkesUyFUNqgbc2QB1Fyh%2FGroup%20wallets%20(1).gif?alt=media&amp;token=09d1d010-dfd3-4fd1-b56d-d19faa5c2e4d" alt="" width="540"><figcaption></figcaption></figure>

### Finding Related Wallets

If you want to find wallets related to a specific one, Compass has a feature for that too. By using this feature, you can identify wallets that may share similar trading patterns or strategies.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FquI6JgBQHbfaS33WPCQq%2FCleanShot%202023-06-12%20at%2015.26.33%402x.png?alt=media&amp;token=1f6714e6-47e3-43d4-b400-c2e7ba438264" alt=""><figcaption></figcaption></figure>

### Winning and Losing Flips with Cost Breakdown

Compass provides a detailed view of each wallet's winning and losing flips, complete with a breakdown of costs. This data can be crucial for understanding a wallet's trading behavior and outcomes.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FUyEMlqLVTEE0yBijCuuI%2FCleanShot%202023-06-12%20at%2015.28.11%402x.png?alt=media&amp;token=8820dfc6-a4ec-47db-b839-99b084961a83" alt=""><figcaption></figcaption></figure>

### Full Transaction History with Powerful Filtering Options

Compass keeps track of all Bidding, Purchasing, Listing, and other transactions made by a wallet. Moreover, it provides powerful filtering options that help you drill down and analyze specific types of transactions.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FOeF9fLj6iigatEVYeHxJ%2FCleanShot%202023-06-12%20at%2015.31.52%402x.png?alt=media&amp;token=5fa69339-7686-44ef-8d0d-d1d97090f7ee" alt=""><figcaption></figcaption></figure>

### Viewing Tokens Held

You can view all tokens held by a wallet. This feature also comes with powerful filtering options, allowing you to sort and analyze the tokens based on your preferences.

\[Place a screenshot or gif here showing how to view and filter tokens held by a wallet]

Remember, understanding the trading behavior of a wallet can be a crucial factor in your own trading strategy. Compass provides the tools you need to do just that in a clear, easy-to-understand manner.


# Wallet overview

When you click on a wallet in Compass, the first page provides an overview of the wallet's trading history, style, and profitability. This article explains the different sections you'll find on the wallet overview page.

### Adding a Nickname to a Wallet

You can add a nickname to a wallet to make it easier to recognize across Compass. The nickname you set will only be visible to you.

![](https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FDzEiq4fgUdd7c07pgvG8%2FCleanShot%202023-06-12%20at%2015.55.18%402x.png?alt=media\&token=addd59b0-0736-4ded-b879-63d6f6f5b4b4)

### Wallet Performance Metrics

The Wallet Performance Metrics section shows you the wallet's lifetime performance. The metrics include ERC 721 and ERC 1155 NFTs purchased from the following marketplaces: Opensea, Blur, LooksRare and X2Y2.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2F8PvFEhzhHsoU8TH9niU1%2FCleanShot%202023-06-12%20at%2015.03.46%402x.png?alt=media&amp;token=c3e50933-1a2c-414b-9a70-f6c5feb20741" alt=""><figcaption><p>Performance overivew of a wallet on Compass</p></figcaption></figure>

### Total Revenue

The total amount of ETH received from ERC 721 and ERC 1155 token sales.

### Total Spent

The total amount of ETH spent on purchasing ERC 721 and ERC 1155 tokens.

### Total Profit

The 'Total Profit' metric represents the total amount of ETH received from ERC 721 and ERC 1155 token sales minus the total amount of ETH spent on purchasing these tokens.

This figure, however, does not account for the value of tokens still held in the wallet's portfolio. It assumes that the wallet's holdings are worth 0 ETH.

To get a better understanding of the wallet's total profitability, add the wallet's 'Portfolio Value' (the current market value of the wallet's holdings) to the 'Total Profit' figure, and subtract the value of 'dead' tokens held by the wallet.

{% hint style="success" %}
Note: 'Dead' tokens are those from collections that had zero sales in the last seven days.
{% endhint %}

{% hint style="info" %}
Tip: This metric is particularly useful for assessing the profitability of wallets that primarily engage in short-term trading. These traders often have positive total profits because they don't have a lot of ETH locked up in their holdings.
{% endhint %}

### Realized Gains

'Realized Gains' is a metric that focuses solely on 'flipped' tokens—tokens that the wallet has bought and then subsequently sold. It calculates the total ETH made or lost from these trades.

This metric ignores any token purchases that have not yet been sold. It also considers tokens that the wallet received via transfer (such as airdrops) and then sold for a profit.

{% hint style="success" %}
Strength: 'Realized Gains' provides useful profitability insights for traders who tend not to sit on losses but instead prefer to close out their positions.
{% endhint %}

{% hint style="danger" %}
Weakness: This metric can be less reliable when a trader is holding a significant number of tokens that have depreciated in value but are yet to be sold. If a trader is sitting on large unrealized losses—such as tokens minted that have now depreciated to 0 ETH—this metric could potentially mask these unrealized losses.
{% endhint %}

### Portfolio Value

The 'Portfolio Value' represents the total value of ERC 721 and ERC 1155 tokens currently held by the wallet. This value is calculated based on the collection's floor prices, or the lowest price at which an NFT is currently listed for sale.

In Compass, tokens are categorized into four liquidity bands: High, Medium, Low, and Dead. 'Dead' collections are those that had zero sales in the last seven days.

The Low, Medium, and High liquidity bands are calculated based on the ratio of sales to the total supply of tokens in the last 48 hours.

{% hint style="success" %}
Note: We recommend using 'Portfolio Value' in combination with 'Total Profit' to get a more comprehensive picture of a wallet's profitability.
{% endhint %}

### Portfolio Value Over Time

This chart shows the total value of the wallet's NFTs based on historical floor prices.

### Activity Scatterplot

The 'Activity Scatterplot' provides a visual overview of a wallet's trading activity over time. Each dot on the scatterplot represents a transaction, and you can hover over a dot to see more information about the specific transaction.

You can interact with this chart in several ways:

1. Click and drag on the chart to zoom in on specific periods of time.
2. Hover over the dots to see more information about individual transactions.
3. Click on the legend at the bottom to hide or display specific token types.

The bottom of the chart displays the profit or losses for a given day based on trades closed on that day.

{% hint style="info" %}
Tip: This chart can help you see how consistently profitable a wallet is, as well as identify patterns of automated listing.
{% endhint %}

{% hint style="info" %}
Tip: If you want to filter the 'Activity Scatterplot' for a single collection only, click the 'Filter' button at the top of the 'Overview' page and select the collection of your choice.
{% endhint %}

### Profit/Loss Pie Chart

The 'Profit/Loss Pie Chart' visually breaks down a wallet's profits and losses according to transaction type.

1. Click on a specific segment of the pie chart to see from which collections the wallet has made profits or incurred losses. For example, clicking on the "Bid" segment will reveal all collections where the wallet made profits or losses from bidding.
2. Once you have clicked on a transaction type, you can click on a specific collection to filter the entire wallet overview page for that collection only. This allows you to explore the wallet's trading history for that collection in more detail.

{% hint style="info" %}
Tip: This chart offers insights into a wallet's trading strategy, revealing whether the wallet's profits/losses are primarily driven by bidding, flipping, or minting.
{% endhint %}

### Recent Bets

This section shows the collections a wallet has recently accumulated or disposed of. It displays the net change in position for a given collection for the selected time period.

{% hint style="info" %}
Tip: Hover over a collection in 'Recent Bets' and click on the 'Only' filter to see the wallet's trading history for that collection only.
{% endhint %}


# Wallet Activity with Filtering

The 'Wallet Activity' tab shows the full Bidding, Listing, Minting, Purchase, Sale, and Transaction history of a wallet.

{% hint style="warning" %}
Good to Know: Wallets using automated bidding/listing bots will have slower than usual load times due to the large number of rows. If the activity rows are not loading, click 'Filters', select the 'Transaction Type' filter, and disable 'Bids' and 'Listings'.
{% endhint %}

Unique to Compass: Powerful filtering capabilities and the wide range of activity types cataloged let you examine a wallet’s trading history for very specific scenarios.

With bids, you can see the marketplace where the bid was placed. You can also see the item that the bid was placed on:

* Collection bids show the collection name in the 'Item' column
* Trait bids show a trait in the 'Item' column
* Token bids show a token with the #tokenID in the 'Token' column

In the case of bids/listings/sales, you can see the difference between the bid/listing/sale and the collection floor at the time of the bid.

{% hint style="info" %}
**Tip:** Filtering for a specific token ID lets you track the token’s journey with the wallet, including how the wallet ramped up their bids for the token, purchased it, transferred it between their wallets (if you are looking at a wallet group), listed and re-listed lower, and finally sold.
{% endhint %}

{% hint style="info" %}
**🤖 Automate with Wallet groups:** You can automatically copy trade wallet groups with Compass Automations.
{% endhint %}


# Own Wallets

Your own wallets in Compass

'Own Wallets' is a default wallet group in the [Wallets](https://compass.art/wallets) tab that consists of the wallets you've connected to your Compass account.

To add wallets to this group:

1. Open your MetaMask.
2. Switch to the wallet you want to add.
3. Click on 'Connect to Compass'.
4. Choose 'Link wallet to existing account'.

When connecting a new wallet to Compass, you can either link it to your existing Compass account, which allows you to log in using that wallet as well, or you can set up a brand new Compass account with that wallet. Linking multiple wallets to Compass lets you easily log in from your phone using a wallet added to the MetaMask app on your phone.

{% hint style="info" %}
**Tip:** If you want to add more wallets to your 'Own' group, it's easier to simply create a standard wallet group and add wallets to that group. This way, you don't have to connect your wallets to Compass.
{% endhint %}

#### Collections

The wallet's 'Collections' page shows the historical profit and loss a wallet or wallet group made from a collection.

#### Wallet Tokens with Filtering

The 'Wallet Tokens' tab lets you browse the portfolio of a wallet or wallet group with powerful filtering capabilities.

{% hint style="success" %}
**Note:** The 'Hide Spam' option filters out tokens that are from 'Dead' collections and have been airdropped to the wallet.
{% endhint %}

{% hint style="info" %}
**Tip:** Hover over the 'Collection' name, above the image of the NFT, to see more info like floor price and top bid.
{% endhint %}


# Flips

The [wallet flip history](https://compass.art/wallet/0x2a030ff3a0a001834eac35b2fe4bef3478ed04bb/flips) provides a rundown of all the NFT trades a wallet made where the token has already been sold.

**Filtering Flips**

You can filter flips by a wide range of criteria. Some filters, like 'Collection', persist when you switch between other tabs like 'Overview' or 'Activity'. You can add multiple filters with 'and/or' logic. See more under 'Filters'.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FJBbilVN2tRkTmpziSKcz%2FCleanShot%202023-06-12%20at%2015.58.32%402x.png?alt=media&amp;token=6bc15b20-4950-48df-890b-60c746640493" alt="" width="375"><figcaption></figcaption></figure>

The purchase/sale type is indicated by the 'Offer/Listing' and 'Airdrop' labels in the 'Cost' and 'Sold for' columns.

* 'Offer' means that the transaction was an accepted bid.
* 'Listing' means the token was a listing on a marketplace that was filled.
* 'Airdrop' means the token was transferred to the wallet for free.

{% hint style="info" %}
**Tip:** Hover over a token to see its floor price and to filter for its collection only.
{% endhint %}

{% hint style="info" %}
**Tip:** Hover over the net profit to see a revenue/cost breakdown as well as the USD value of the profit/loss.
{% endhint %}

{% hint style="info" %}
**Tip:** Click on the 'Offer/Listing' labels to see the Activity for that token only. This is useful if you want to see who the buyer was, the marketplace, whether the token was sold above the floor, how many times it had to be re-listed lower to sell, and more.
{% endhint %}


# Wallet Groups

Group Multiple Wallets into One

&#x20;The [Wallet Groups](https://compass.art/wallets) feature allows you to analyze and track multiple wallets as if they were one single wallet. This feature is useful to:

* Analyze the profitability and trading strategy of a trader who uses multiple wallets to obscure their track record.
* Observe what a trader is minting across multiple wallets, which are used to bypass per-wallet minting limits and whitelist spots.
* Determine the complete portfolio value of traders who operate from hot wallets and hold valuable tokens in a cold wallet, often referred to as a "Vault."
* Map a network of scammer wallets to keep track of the NFTs they are stealing.
* Monitor the profitability of trading strategies by grouping together traders who employ similar methods. For example, grouping arbitrage bots together to create a benchmark of the market’s arbitrage profitability.
* Track the activity of notable wallets with the Wallet Groups feed.
* Keep an eye on your own wallets.

{% hint style="info" %}
**Tip:** Use alerts on wallet groups to receive notifications when one or more members of a group buys, sells, transfers, mints, or lists tokens.
{% endhint %}

Creating wallet groups in Compass is straightforward. You can accomplish it in two ways:

1. On a wallet overview page, click on 'Groups' in the top right corner. <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2F6IVN6NvDOXmF9FuqwGjC%2FCleanShot%202023-06-12%20at%2015.59.26%402x.png?alt=media&amp;token=6673066d-6569-4f40-80d1-d4a2dd5fe0f7" alt="" data-size="line">
2. Whenever you see a wallet anywhere on Compass, hover over the profile image and click 'Group'.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FSctFzyHQsl1AWyYL0fnu%2FCleanShot%202023-06-12%20at%2016.03.34.gif?alt=media&amp;token=e6c92949-a9d9-4ed8-bfad-cac884032bad" alt="" width="375"><figcaption></figcaption></figure>

### **How to View Your Existing Wallet Groups**

You can access your wallet groups in two ways:

**In the Wallets tab:**

1. Click on 'Wallets', then 'Pin Group'.
2. Select a group.
3. Click on the wallet names on the right.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FSmIAIRvDheNzubthumg6%2FCleanShot%202023-06-12%20at%2016.34.09%402x.png?alt=media&amp;token=0f0dcaa9-7c31-4243-a067-2b93db033f4b" alt=""><figcaption></figcaption></figure>

**In a wallet’s overview page:**

1. Click on 'Group'.
2. Click on the box next to a group.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FXKl3Yca4EpL6Br2DT2G1%2FCleanShot%202023-06-12%20at%2016.36.14%402x.png?alt=media&amp;token=60ea1a0f-f966-4cee-a6d7-b0c78cbffc89" alt="" width="563"><figcaption></figcaption></figure>

### Wallet Groups Activity Feed

The [Wallet Group activity feed](https://compass.art/wallets) provides an overview of a group's recent activities. The feed allows you to easily stay up-to-date on what a wallet group is doing, thanks to the activity timeline and the unified activity scatterplot. By clicking on the wallets of the wallet group in the top right, you can view the complete overview of the wallet group.

Click on 'Pin Group' at the top to add groups to your Wallet Activity tab.


# Related Wallets

At the bottom section of the wallet overview, you'll find wallets that Compass identifies as having a close relationship with the wallet you're currently reviewing.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FquI6JgBQHbfaS33WPCQq%2FCleanShot%202023-06-12%20at%2015.26.33%402x.png?alt=media&amp;token=1f6714e6-47e3-43d4-b400-c2e7ba438264" alt=""><figcaption></figcaption></figure>

**How does Compass determine related wallets?**

A wallet is deemed related if it has received at least two NFTs from the wallet you're examining.

Let's consider an example with two wallets, A and B:

* Wallet A transfers at least two NFTs to Wallet B. As a result, Wallet B will appear as a related wallet on Wallet A's overview page.
* If Wallet B reciprocates by sending back at least two NFTs to Wallet A, Wallet A will then appear as a related wallet on Wallet B's overview page.

The rationale behind requiring two NFT transfers includes:

* Avoidance of false positives from one-off transfers for tax purposes, non-standard purchase transactions, NFT staking on wallets controlled by the project contract.
* Detection of strategic transfers between wallets under the same ownership, which can be indicative of tactics to conceal profits, hide trading histories, circumvent wallet minting limits, or transfer NFTs to a secure vault or to friends and family, among other reasons.

We recommend examining similarities between related wallets. Wallets under the same ownership often have a similar ENS name or exhibit similar trading patterns.

{% hint style="info" %}
**Tip:** Click on the green <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FMQCEmy2eRk00Gsjl868Z%2FCleanShot%202023-06-12%20at%2016.40.24%402x.png?alt=media&amp;token=83ca5ac2-63aa-4019-b46c-2c9a663fe4c6" alt="" data-size="line"> pill to see the tokens transferred to the related wallet. These transfers are the basis of the relationship. To further ensure the wallets are related, also set filters to include transfers back to the original wallet. Two-way transactions are often telltale signs of wallets having the same owner.
{% endhint %}

{% hint style="info" %}
**Tip:** To group multiple wallets as one, hover over the relevant wallet and click the <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FUvNEdzHvkuSlZEAuJMA2%2FCleanShot%202023-06-12%20at%2016.41.59%402x.png?alt=media&amp;token=3e435b9a-afae-46c3-8283-f64d79594271" alt="" data-size="line"> button. When you view a group of wallets, any new related wallets are identified based on NFT transfers from the group.
{% endhint %}

{% hint style="success" %}
**Note:** Through testing, we found that our approach minimizes false-positive matches and provides the highest correct related wallet detection.
{% endhint %}


# Profit leaderboard

{% embed url="<https://www.youtube.com/watch?ab_channel=CompassNFT&v=uMyG4oVrblI>" %}
Compass Profit Leaderboard Tutorial
{% endembed %}

The Wallet Profit Leaderboard in Compass provide a comprehensive overview of the most profitable NFT traders on ethereum. These leaderboards can assist you in identifying successful traders whose strategies you might want to emulate.

### Understanding the Wallet Profit Leaderboards

 The Profit leaderboard can be accessed under Pulse>Profit Leaderboard.

On the Profit Leaderboard page, you will see a list of wallets that have made the most profits within a selected period, e.g., the last seven days.

Each row in the leaderboard corresponds to a single wallet and provides the following data:

* **Wallet**: This is the ens, nickname or address of the wallet.
* **Total Profit**: The net profit this wallet has earned in the specified period. The percentage of winning flips is displayed below.
* **Purchases**: The total number of tokens and collections this wallet has flipped. The colored bar displays an overal strategy profile for the wallet. For example a mostly dark green bar means the wallet is typically acquiring tokens through bids. Hover over the bar to see more.
* **Avg Purchased For**: The average price at which tokens were purchased by this wallet in the selected period.
* **Avg Profit**: The average profit per flip that the wallet has made in the period
* **Total Spent**: The total amount spent by the wallet on purchasing and minting tokens during the period.
* **Total Gas Paid**: The total amount of gas fees paid by the wallet during the period.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FYh8leBQykyXFTh5NDEkG%2FCleanShot%202023-06-12%20at%2016.45.42%402x.png?alt=media&amp;token=0840ceb0-7d3e-4fbb-9cc3-1235e26acba7" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
Note: A profitable or winning "flip" refers to the process of buying an NFT at a lower price and selling it at a higher price for a profit.
{% endhint %}

### Leveraging Filters for Better Insights

The power of the Wallet Profit Leaderboards lies in its filtering capabilities. You can use preset filters to narrow down the traders any way you like.   \
\
We recommend starting out with these three main categories, click on the links and bookmark them:

1. [**Best Bidders**](https://compass.art/pulse/leaderboard?filters=W3sia2V5IjoibnVtYmVyT2ZUb2tlbnNQdXJjaGFzZWRCeUJpZGRpbmciLCJ2YWx1ZSI6eyJjb21wYXJhdG9yIjoiZ3QiLCJ2YWx1ZSI6MjB9LCJ0eXBlIjoibnVtYmVyIn0seyJrZXkiOiJ0b3RhbFByb2ZpdCIsInZhbHVlIjp7ImNvbXBhcmF0b3IiOiJndCIsInZhbHVlIjowfSwidHlwZSI6Im51bWJlciJ9XQ==): Traders who are primarily placing bids and making a substantial profit.
2. [**Best Minters**](https://tinyurl.com/5mjrz9yn): Traders who consistently mint new tokens across multiple collections.
3. [**Best Flippers**](https://tinyurl.com/yxff9a82): Traders who buy tokens at a low price and sell them at a higher price for a profit.

{% hint style="info" %}
**Tip:** The preset filters for these categories can be bookmarked for easy access. However, you can fine-tune these dashboards to create your own custom filters that best suit your needs.
{% endhint %}

{% hint style="info" %}
**Tip:** You can use the period selector to choose the timeframe for which you want to view the data.
{% endhint %}

### Using Leaderboards for Strategic Insights

Beyond identifying profitable traders, the leaderboards can also give you insights into your competition. If you're employing a specific strategy (like bidding or minting), you can find other traders who are using the same strategies and compare their success with yours. This can help you refine your own approach and boost your profitability.

Finally, once you've identified a successful trader, you can delve into their strategy by exploring their wallet analytics dashboard.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2F8PvFEhzhHsoU8TH9niU1%2FCleanShot%202023-06-12%20at%2015.03.46%402x.png?alt=media&amp;token=c3e50933-1a2c-414b-9a70-f6c5feb20741" alt=""><figcaption><p>Wallet overview</p></figcaption></figure>

With the Wallet Profit Leaderboards, you gain valuable insights into the trading strategies that work in the NFT market, helping you make more informed decisions and improving your trading style.


# Compass Pulse

Guide to the Compass Market Pulse

{% embed url="<https://youtu.be/BfjXvClghlE>" %}
Compass NFT Market Pulse Walkthrough
{% endembed %}

The Market Pulse page in Compass provides an overview of the NFT market on Ethereum. It presents data across several metrics, giving you a comprehensive picture of overall market trends.

### NFT Trading Volume Chart

This chart displays the NFT trading volume across the three major marketplaces within a specific timeframe. Use this chart to track the volume of NFTs traded and to see trends in buying and selling activity over time.

### Compass Blue Chips Index

The Compass Blue Chips Index tracks the floor price of the top five collections, both in USD and Ethereum (ETH). This index gives a sense of the minimum cost for buying into the leading NFT collections.

{% hint style="success" %}
**Note:** The floor price refers to the lowest price at which an NFT is available for purchase within a particular collection.
{% endhint %}

### New and Returning NFT Buyers Chart

This chart visualises the adoption waves of NFTs over time. It's an excellent way to gauge interest in NFTs and track changes in buyer inflows.

### Unique Buyers and Sellers

This metric shows the number of unique buyers and sellers in the NFT market. More buyers generally imply an upwards pressure on prices, while more sellers could indicate a downward trend.

### Total Ethereum Spent on Mints and Associated Gas Fees

This data provides insights into the total amount of Ethereum spent on minting NFTs, as well as the associated gas fees. New projects often raise a significant amount of Ethereum, indicating investor interest in these new ventures.

{% hint style="info" %}
**Tip:** "Minting" refers to the process of creating a new NFT on the blockchain.
{% endhint %}

### Number of Collections Released

This chart represents the number of collections released each day. The more collections that come out, the more diluted the market might become. Monitor this to track the saturation of the NFT market.

With the Market Pulse page in Compass, you can easily stay updated on NFT market trends, helping you make informed decisions about your NFT investments.


# Getting Started with Alerts

How to set up Alerts in Compass

{% embed url="<https://www.youtube.com/watch?ab_channel=CompassNFT&v=s5hrjm_ADDQ>" %}
How to Set up Alerts with Compass
{% endembed %}

The Alerts feature in Compass allows you to set up and receive alerts about specific events in the NFT space. This guide will walk you through the process of creating and configuring different types of alerts.

### Creating a New Alert

To create a new alert, click on the <img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2F5W0ylmELtpMk6D17H66h%2FCleanShot%202023-06-12%20at%2016.48.07%402x.png?alt=media&amp;token=bd1118e6-0584-4725-8a0e-47fb24d900f6" alt="" data-size="line"> in the top right corner on Compass, then click the 'Create Alert' button. You will be presented with various alert options, including Wallet Activity, Feed Activity, and Floor Price.

#### Wallet Activity Alert

This type of alert will notify you when a specified wallet makes transactions. You can track wallet activity by toggling the activity type options (Mint, Burn, Sale, Purchase, Transfer).

#### Feed Activity Alert

The Feed Activity Alert notifies you when there's new activity on your wallet feed. You can set up this alert by selecting a channel and naming your alert.

#### Floor Price Alert

The Floor Price Alert is designed to inform you when a collection's floor price crosses a specified threshold. To set this up, input the collection name and the threshold price in ETH.

#### Collection Listings Alert

This alert informs you when one or more tokens from a specified collection are listed. You can further filter this alert based on the token owner, token ID, price, and specific traits.

{% hint style="info" %}
**Tip:** You can make more kinds of alerts using [Compass Automations](/automations/set-up-your-first-listing-alert).
{% endhint %}

### Setting Up Alert Channels

Alerts can be delivered via different channels, including Discord and Telegram. To create a new alert channel, click on 'Create Channel'.

#### Discord Webhook

If you want to receive alerts via a Discord server, use the 'Discord Webhook' option. To do this:

1. Create a new text channel in your Discord server.
2. Go to 'Integrations' and create a new webhook.
3. Copy the webhook URL.
4. Paste the URL into the 'Webhook URL' field in Compass and click 'Create'.

#### Discord DM

To receive alerts via Discord Direct Message:

1. Head over to the 'RoboRoom' channel in the Compass.Art Discord server.
2. Type '/my-ID' to receive your unique ID.
3. Copy this ID and paste it in the 'Discord ID' field in Compass. Click 'Create'.

#### Telegram

To receive alerts via Telegram:

1. Open Telegram and search for 'Compass\_NFT\_alert\_bot'.
2. Start a conversation with the bot and type '/start'.
3. The bot will provide a unique code.
4. Copy this code and paste it into the 'Telegram Code' field in Compass. Click 'Create'.

{% hint style="success" %}
**Note:** Regardless of the channel, don't forget to add a name for your alert. This will help you easily identify your alerts.
{% endhint %}

With Compass's Alerts feature, you can stay updated on the NFT market's activities and make informed decisions based on real-time data.


# Getting Started with Automations

{% embed url="<https://www.youtube.com/watch?ab_channel=CompassNFT&v=vTe4qGFcSks>" %}
Compass Automation Intro
{% endembed %}

Follow these steps to start with Compass Automations:

1. **Create a wallet**: Navigate to `Automations >` [`Wallets`](https://compass.art/automations/wallets) and create a new wallet.
2. **Deposit tokens**: Click on `Deposit` under the newly created wallet, and deposit ETH, WETH, and Blur pool tokens based on what you wish to automate. You also have the option to export the private key of the wallet and perform swaps directly from Metamask by clicking the three dots next to the wallet.
3. **Run an automation**: Visit the [`Explore`](https://compass.art/automations/explore) page and run a pre-made Automation. For instance, you could run the `Trait Bidder` to bid on traits or the `Opensea Lister` to keep your NFT listed on the floor.
4. **Understand the inputs**: Make sure to read the instructions on what the inputs for each Automation do. Most inputs will have recommended values already set as default.

### Learn More

Get more insight about the concept behind Compass automations in this Knowledgebase


# Wallets

Automating with wallets

If you want to automate things like bidding, listing and sniping you have two options for wallets: you can use one of your existing wallets with remote signing, or create a wallet within compass and fund it with ETH/WETH.

### Remote signing

**Benefit:** Trustless, your Private Keys never leave your browser.

**Drawback:** You need to have a browser open to sign transactions in the background.

#### How to add a remote signing wallet

1. Go to [Wallets](https://compass.art/automations/wallets)
2. Click on Import

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FwOmRWEOOdKokwkSmQccj%2FCleanShot%202023-07-15%20at%2011.22.10%402x.png?alt=media&amp;token=a87fe758-fa9e-4d47-9c8e-5e68871d6331" alt=""><figcaption></figcaption></figure>

### Compass-created wallet

**Benefit:** Automations keep running even if you have your computer switched off.

**Drawback:** You need to fund the wallet with ETH/WETH to run Automations from it.

#### How to create a Compass wallet

1. Go to [Wallets](https://compass.art/automations/wallets)
2. Click on Create
3. You can export the private key by clicking the three dots next to the wallet (...)
4. Import your wallet to MetaMask or any other wallet manager
5. Transfer some ETH, WETH to your wallet depending on what you want to do with it.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FJ8HnhvGEVqk2DlNfpeSu%2FCleanShot%202023-07-15%20at%2011.36.48%402x.png?alt=media&amp;token=ffae7167-3faa-430e-951e-268f67c929e5" alt=""><figcaption></figcaption></figure>


# Key Terms in Automations

Learn what the jargon means

Compass Automations is an online automation tool that helps you build custom trading automations for NFTs without any coding experience. This guide will walk you through the key concepts to help you get started with Compass Automations.

### Automation <a href="#h_75009de372" id="h_75009de372"></a>

An Automation is an automated workflow that connects various aspects of your trading activities. Each Automation consists of a trigger and one or more actions. When you enable your Automation, it will run the action steps every time the trigger event occurs.

### Automation Builder <a href="#h_dcdce2c84c" id="h_dcdce2c84c"></a>

The Automation Builder is a user-friendly interface that allows you to create an Automation from scratch. In the Automation Builder, you can set up a trigger and one or more actions.

### Automation Library (Explore) <a href="#h_25c8efa4c4" id="h_25c8efa4c4"></a>

The Automation Library, also known as Explore, is a collection of pre-made automations for various use cases. You can browse and choose from the best automations built by our team and start using them with just one click.

### Trigger <a href="#h_9e6cdad844" id="h_9e6cdad844"></a>

A Trigger is an event that starts an Automation. For example, if you want to automatically buy a token when it is listed 50% below the floor price, the trigger is 'Token listed'. See the list of Triggers available [here](https://intercom.help/compassart/en/collections/3945806-triggers)

### Action <a href="#h_f8f33adfd4" id="h_f8f33adfd4"></a>

An Action is an event an Automation performs after it is triggered. For example, if you want to automatically buy a token when it is listed 50% below the floor price, the action is 'Buy token'. See the list of Actions available [here](https://intercom.help/compassart/en/collections/3945696-actions)

### Variable <a href="#h_949f2c3734" id="h_949f2c3734"></a>

Data between your trigger and actions and automation inputs is passed on in variables. For example, the Get Collection Floor action passes on the collection floor as a variable. You can then use this variable in the List token action to list your NFT on the floor.

### Inputs <a href="#h_184b99713d" id="h_184b99713d"></a>

Inputs are the data or values that go into a Trigger or Action in your Automation. They serve as the parameters or settings required for the specific Action to function correctly. Inputs can be user-defined or received from other parts of the Automation. For example The collection address you want to bid on can be an input for the Bid on Blur Action.

### Outputs <a href="#h_fed16efdff" id="h_fed16efdff"></a>

Outputs are the results or data that come out of a trigger or action in your Automation. They are generated after the Trigger or Action has been executed and can be used as inputs for subsequent steps within the Automation, allowing you to create complex and interconnected workflows. For example, the collection floor from the "Get Collection Floor" action is an output that can be used as an input for a subsequent action, such as setting a bid price.

### Automation Input <a href="#h_47c9c43381" id="h_47c9c43381"></a>

Automation Inputs allow you to add data in one place and pass that data as a variable to different actions and triggers within your Automation. They simplify the process of creating and reusing Automation templates. Automation Inputs are a certain type of Input that is specified in the beginning of an Automation or Template.

For example, if you want to repurpose an Auto Lister, you can use an Automation Input for the collection address. Instead of changing the collection address in multiple actions, you only need to update the Automation Input. Then, the updated input will automatically be used wherever the collection address appears in your Automation. This makes it easier to customize and repurpose your Automations.

### Template <a href="#h_74f9b5ba4f" id="h_74f9b5ba4f"></a>

Templates allow you to repurpose and share Automations. By creating a template out of an Automation, you can easily reuse the structure of the Automation without duplicating it and manually changing all the inputs. Instead, you can create new Automations from the template with blank inputs that simply need to be filled out.

Templates are also a great way to share your Automations with others. If you have the right permissions, you can even submit your templates to the Automation Library, making them available for the wider Compass Automations community to use and benefit from.

### Automation Run <a href="#h_ec13530b64" id="h_ec13530b64"></a>

An Automation Run refers to a single instance when an Automation is executed. It occurs when a trigger event is detected, and the Automation proceeds to carry out its actions. Each Automation Run represents a complete cycle of the trigger being activated and the corresponding actions being performed.

An Automation Run can have three results:\
**Success** - Successful automation run with all actions executed

**Warning** - Successful automation run with some action(s) hitting a non-breaking issue

**Error** - Failed automation run with an action hitting a breaking issue

### Automation History <a href="#h_5899b53444" id="h_5899b53444"></a>

Automation History is a log of your Automation activity, including the details of each Automation Run, the data that flows in and out of each step, and any errors or issues that may have occurred during execution. By reviewing your Automation History, you can gain insights into the performance of your Automations, troubleshoot issues, and optimize your Automation logic.


# Inputs/Outputs

Learn about Inputs/Outputs

### What are Inputs?

Automations use inputs and outputs to transfer data between steps, such as "Triggers" and "Actions".

Take a two-step scenario as an example:&#x20;

1. Action 1 ("Get Collection Floor"): The input is the Doodles Collection, and the output is the Floor price of this collection.
2. Action 2 ("List an NFT for Sale"): The input is the Floor price (output from Action 1) and the output is a new NFT listed at this price.

In this way, the output of one action becomes the input for the next, ensuring the new NFT is listed at the current market price.

### How to Add Inputs to an Action

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FvsiyXbmhbvJkcpEgcDjb%2FAction%20Inputs.png?alt=media&amp;token=fece0197-ba46-4ec4-8e51-deb2a0f2ff6d" alt=""><figcaption><p>These are the inputs of an Action in Compass</p></figcaption></figure>

Inputs are fed into the input fields of an action, as shown in the screenshot above.

{% hint style="info" %}
**Tip:** Input fields can be either required or optional.
{% endhint %}

You can either manually enter inputs, for example, setting a list price of 0.32 eth, or you can utilize an output from a preceding action/trigger by clicking on 'Use Variable'.

{% hint style="info" %}
**Tip:** A variable is a placeholder that symbolizes data.
{% endhint %}

{% hint style="success" %}
**Note:** The 'Use Variable' button is often displayed as `{}`.
{% endhint %}

Once you've clicked on 'Add Variable', you can see the outputs from all previous Triggers and Actions. These can be used as inputs in the selected Action. You can expand/collapse the Actions to view their outputs. The 'Recommended' inputs are suggested based on their type.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2Fkt1naLg4mOSDPB0iSUxh%2FCleanShot%202023-06-08%20at%2020.07.03.gif?alt=media&amp;token=59d61316-cfed-4fb3-a6ae-419722f34000" alt="" width="563"><figcaption></figcaption></figure>

{% hint style="info" %}
**Tip:** If an input field is orange, it means the input is not a recognised as a valid output from a previous step.
{% endhint %}

You can also see the outputs of Individual actions by adding the Action to your Automation and clicking on Outputs.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FTC3oONOHj9rssPBErW1p%2FAutomation%20outputs.png?alt=media&amp;token=f6d4925f-0a2b-4c31-b25f-45195fb4c53c" alt=""><figcaption></figcaption></figure>

### Performing Mathematical Operations with Inputs

You can perform various mathematical functions with your inputs, such as multiplying an input by a number or adding two inputs together.

Here are a few examples:

* **Automatically Outbidding:** Fetch the top bid and place a new bid at the ‘**Top Bid** + **0.0001**’.
* **Setting a Stop Loss:** Fetch the Floor price and your purchase price, then list when ‘**Floor** - **Last purchase price** < 0'.
* **Alert on a Fat Finger Listing:** Receive a notification when 'Listing Price is < **Floor price** \* **0.5**’.

Here are the steps to perform mathematical operations with inputs:

1. Click on an input field and select an output from a previous step.
2. Click on the blue input you've just selected and choose one of the available mathematical functions.
3. Either manually add a number or click on `{}` to add another variable to your mathematical logic.
4. You can add as many mathematical functions as you'd like.

{% hint style="info" %}
**Tip:** You can test the mathematical formula you've created by clicking on 'Test Variable' and entering a value for each one of your inputs.
{% endhint %}

The screenshot below illustrates how to add '0.0001' to an input or combine two inputs.

{% hint style="success" %}
**Note:** Compass uses standard LiquidJS formulas for mathematical functions. Learn about all supported LiquidJS functions [here](https://liquidjs.com/filters/minus.html).
{% endhint %}

{% hint style="info" %}
**Tip:** Click on 'Advanced' to see and edit a variable directly in LiquidJS.
{% endhint %}

{% hint style="info" %}
**Tip:** You can view the outputs of an action by adding it to your automation and clicking 'Outputs' at the bottom. Learn what the symbols mean below.
{% endhint %}

### Input/Output Types <a href="#input-output-types" id="input-output-types"></a>

Input/output types are generally set automatically and you won't need to worry about them. The only time you'll need to manually set them is when you're adding inputs to an automation itself instead of just passing inputs between actions.

Depending on the specific input field, inputs can be numbers (like 4, 24), a text string (like 0x5aAeb6...), a Boolean value (yes/no), or an array (a list of items).

#### String (Text) Input (Green 'A' icon)

String inputs are the default and most versatile type of inputs. They allow you to enter a variety of values. For example, a collection or wallet address would be entered as a string input.

#### Array (List) Input (Purple 'List' icon)

Array (or list) inputs allow you to enter multiple lines into a list. This is particularly useful with Notification Channels, where you might want to specify more than one channel.

#### Number Input (Yellow '#' icon)

Number inputs accept both whole numbers and decimal values. Use a period (.) as the decimal separator in these inputs. For example, enter 0.52 instead of .52.

#### Boolean True/False Input (Blue 'Toggle' icon)

Boolean inputs only have two possible values: 'true' and 'false'. These can also be represented with the values '0' for false, or '1' for true. This type of input is great for turning alerts on and off, especially when used in conjunction with groups and 'only continue if' actions.

### Automation Inputs <a href="#automation-inputs" id="automation-inputs"></a>

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2Frk7xeRbnS9nxzRr8rFXl%2FAutomation%20Inputs.png?alt=media&amp;token=48ebae9b-985f-4199-83e4-007520a7c7fd" alt=""><figcaption></figcaption></figure>

Automation inputs simplify the process of adjusting and repurposing automations. By using automation inputs, you can set a parameter like a collection address just once at the top of the automation, rather than having to manually input it in every action that requires it.

This functionality is particularly useful when using automations from the Automation Marketplace. You can set all necessary inputs in one place at the top of your automation, and these values will then be passed on to all the steps within the automation.

#### How to Add an Input to an Automation?

1. Open your automation and click on 'Inputs' at the top.
2. Click on 'Setup' then 'Add' to create a new input.
3. Name your automation input, for example 'collectionAddress'. Spaces are not supported.

{% hint style="info" %}
**Tip:** If you use camelCase when naming your automation inputs, the name will be displayed as 'Camel Case'.
{% endhint %}

4. Select the Type.
5. Add a description. This is especially helpful if you're sharing your automation with others or publishing it on the marketplace.
6. Choose 'Acting as'.
7. Untick 'Required' if you want to set a default value for this input.

{% hint style="info" %}
**Tip:** Default values are useful when you rarely want to change that value. For instance, an Outbid value of 0.0001 is a good candidate for a default value.
{% endhint %}

8. Click 'Add' to finalize.

#### What is 'Acting as' in Automation Inputs?

The 'Acting as' feature in automation inputs enhances user convenience when setting specific types of values. For instance, if you set the 'Acting as' to 'Collection', you get a collection search bar and collection picker instead of having to manually copy and paste the collection address each time you want to change it.

**Available 'Acting as' Options for Each Value Type:**

**Number Input Type Options:**

* 'Duration': Adds a day/minute selector and converts the input number into seconds.
* 'Marketplace': Adds a Marketplace picker where you can choose from options like Opensea, Looksrare, X2Y2, or Blur.
* 'Collection Watchlist': Adds a dropdown menu allowing you to select a watchlist from your collection watchlists. Learn more about collection watchlists here.

**String (Text) Input Type Options:**

* 'Collection': Adds a Collection search bar and a dropdown collection picker.
* 'Wallet': Adds a Wallet search bar and a dropdown wallet picker, enabling you to search for and select any Ethereum wallet.
* 'Token': Adds a greyed out suggested format into the input text box that shows the long-form format of a token ID (for example, '0×0000000000000000000000000000000000000000\_321').
* 'Trading Wallet': Adds a dropdown wallet picker, letting you select from the trading wallets you have created in Compass Automations.
* 'Period': Adds a period selector and passes on the chosen period as a string (e.g., '5m').
* 'Trait': Adds a trait picker. The trait picker checks the other Automation inputs for one named 'collection'. If it finds one, it automatically shows the traits of that collection.

**Array (List) Input Type Options:**

* 'Notification Channels': Adds a Notification channel picker. When using this 'Acting as' option, choose 'Array' as the type and set the array to include one number.


# Testing Automations

How to test and troubleshoot automations

Automations are created through a process of testing and iterating. Here is a step by step guide on how to test your Automations.

### Step 1: Set Up Your Triggers and Actions

In your automation, set up the necessary triggers and actions. A trigger could be a Repeat trigger or any other condition that you want to initiate the automation. The actions are the operations you want to perform.

### Step 2: Replace Transaction Actions with Notify Channels Action

If your automation includes actions that perform a transaction or wallet activity such as "Make Offer", "List Token", "Buy Token", "Accept Offer", etc., you should replace these with a Notify Channels action for testing purposes. This replacement step helps you verify your settings without performing the actual transaction.

1. Locate the specific action you wish to replace (e.g., "Make Offer").
2. Disable this action using the toggle button located next to it.
3. Set up a Notify Channels action if you haven't already. When setting up this action, make sure to add the same inputs as in the action you are replacing. This action will send a message with these inputs to your designated Telegram or Discord channel instead of executing the original action.
4. Enable your Notify Channels action.

Here is an example of how you can replace a "Make Offer" action with a Notify Channels action:

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FOU7o2F6GnAErAdTOymgN%2FSimulator%20bids.png?alt=media&amp;token=b51c2a02-e466-4dfb-8fb0-3185ecae0050" alt=""><figcaption><p><em>You can see a Make Offer Action along with its simulated bid alternative, which is a simple Notify Channels action.</em> </p></figcaption></figure>

After you've set up the Notify Channels action, a message with the same inputs as the replaced action will be sent to your Telegram channel. This allows you to ensure you're bidding on the correct collection, with the right amount, and from the right wallet, without performing an actual transaction.

{% hint style="success" %}
Note: If you got the Automation from the Marketplace, it'll have a test mode option. If you enable this mode and run the automation, it won't place actual bids or list tokens. Instead, it will send you simulated bid alerts or messages to your specified channel.
{% endhint %}

### Step 3: Get Your Automation to Run

With a *Repeat* trigger, just enable the automation to get it to run. If you are using other triggers like *New Listing, New Sale etc.* then we recommend changing the collection for which your automation triggers for, to a collection that is seeing a lot of Activity. You can find collections with a lot of activity on the  [trending collections](https://compass.art/collections/trending) tab.

{% hint style="info" %}
**Tip**: Editing your Trigger is the best way to get your Automation to run when you're testing it. Don't forget to enable the Automation with the toggle in the top right!
{% endhint %}

{% hint style="info" %}
**Tip:** Enabling an automation with a Repeat Trigger instantly triggers it.
{% endhint %}

### Step 4: Check the Automation Run History

Once your Automation had a run it's time to see what each action did, what their inputs and outputs were. Click History, then clink on the on the run that appeared to see the inputs and outputs of each action.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FTPHf49vSgtkOC2V8kGrM%2FRun%20Trace.gif?alt=media&amp;token=654cd2a7-767e-4c52-85fe-523f7a059501" alt="" width="463"><figcaption><p>Checking Actions in th Automation Run History</p></figcaption></figure>

Click [here](#troubleshooting-automation-runs) to read about troubleshooting Automations.

{% hint style="success" %}
**Note:** If you also have a Notify Channels action, then you can check your Discord/Telegram to see the simulated bids/lists you made. The content of these alerts is also visible in the automation run history in the inputs of the Notify Channels action.
{% endhint %}

### Step 5: Debug and Iterate

If an automation did not run as expected, you can investigate what went wrong by going to Automation History > Click on a Run. Here, you can expand the inputs and outputs of each action to see what didn't go as expected.

Once you've identified the issue, update your automation accordingly. Then, refer back to Step 3 to get the automation to run again and verify whether the issue is resolved.&#x20;

### Troubleshooting Automation Runs

Automation runs can have four possible states:

* **Running**: The automation is currently executing. Click on it to see actions being performed one by one.
* **Success**: The automation completed without any issues.
* **Error**: One or more actions of the automation encountered an issue that stopped the run, either within a Group, Loop, or the whole Automation. For example, an input might have been missing.
* **Warning**: One or more actions of the automation encountered a minor issue, but the run continued.

#### Investigating Issues

If an automation did not run as expected, you can investigate what went wrong by going to `Automation History > Click on a Run`. There, you can expand the inputs and outputs of each action to see what didn't go as expected.

You can see the number of calls next to each Action to identify where the Automation stopped. If it didn't stop at an action that has an error, it likely stopped at an `Only Continue If` Action.

{% hint style="info" %}
**Tip**: In the case of the `Only Continue If` action, you're comparing the Key to the Value. If either of these is missing, it means the Action didn't receive an input.
{% endhint %}

#### Seeking Help

If you're having trouble figuring out why your Automation isn't running as expected, don't hesitate to contact chat support in the bottom right corner on Compass.

#### Fixing Issues

If you think you've identified the issue, update your Automation, turn it on, and then turn it off to see it run again.

{% hint style="info" %}
**Tip**: To manually run an automation with a Repeat Trigger, without having to wait, turn the Automation on, wait five seconds, and then turn it off again. You should see the run in the Automation Run History.
{% endhint %}


# Set Up Your First Listing Alert

Get Notified if Someone Lists a Specific Trait

This tutorial will guide you through the process of creating a simple Listing Alert with Compass Automations.

{% hint style="info" %}
Note: You can use the Listing Alert Automation set up in this walkthrough with one click from the automation marketplace.
{% endhint %}

### Step 1: Create an Automation

Go to [Automations](https://compass.art/automations) and click **Create Automation**.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FUlCnkOQMZxwlt95I42i2%2F1.jpg?alt=media&amp;token=aac94825-c1a1-4b75-9e48-bc5cbc3e2ba6" alt=""><figcaption></figcaption></figure>

### Step 2: Name Your Automation

Name your automation. For this guide, we'll name it `Doodles Rainbow Head Listing Alert`.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FV1NVLig2hXTcGrjKE0If%2F2.jpg?alt=media&amp;token=58363f1c-ba59-417a-b507-9dc887d69cf6" alt=""><figcaption></figcaption></figure>

### Step 3: Select the Trigger

Select the **Token Listed** Trigger. This Trigger initiates the automation when a Token is Listed on any marketplace.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FfNvL4E3VKB3e8svzyxr5%2F3.jpg?alt=media&amp;token=63fbf43b-5c74-4394-97fb-891f75c5d7e1" alt=""><figcaption></figcaption></figure>

### Step 4: Add Collection Filter

Click **Add Filter** and select the Collection filter. This filter ensures the Automation only triggers when a Doodle gets listed.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2F7bZDx0KXxoZGYlfaLCFi%2F4.jpg?alt=media&amp;token=4e81452c-771f-4bfa-ac88-28edd7e58c75" alt=""><figcaption></figcaption></figure>

### Step 5: Select the Collection

Search for the Doodles collection and select it. Now, the Automation will only trigger if a Listing happens for Doodles.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2F4BEK9wmNrPI2uk27jJX2%2F5.jpg?alt=media&amp;token=2d9d1b47-0f97-4053-8101-5ca5e5464c43" alt=""><figcaption></figcaption></figure>

### Step 6: Choose the Token Traits Filter

Choose the Token Traits filter.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FRry4772nchkiKyOPMzuO%2F6.jpg?alt=media&amp;token=d44c5dc4-6393-4e60-a8c7-eda3d05147cd" alt=""><figcaption></figcaption></figure>

### Step 7: Specify Trait Type and Value

Pick the collection again, and the Trait type and value you want to trigger for. Now you have the Trigger set. It will only trigger if a Doodle with a Rainbow Head is listed.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FMtHEhmyPToT801eXWzHO%2F7.jpg?alt=media&amp;token=4a034a1d-2e52-4f59-9812-e62fa6d8e966" alt=""><figcaption></figcaption></figure>

### Step 8: Pick the Notify Channels Action

Select the **Notify Channels** Action. This Action sends a message to a channel of your choice. Most people use Discord and Telegram.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FzzZuYD4mEmUIuTITsXAf%2F8.jpg?alt=media&amp;token=c493aaac-bcb5-4bbb-aba5-a9036708e97a" alt=""><figcaption></figcaption></figure>

### Step 9: Create Notification Text

Create the text for the notification. This text will be received as a message on your device. Sample text: \
\
🏷️ New Listing \
Collection: \
Listing Price: Ξ \
Collection Floor: Ξ<br>

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FhzInL2klGWgsLS6n3RF3%2F9.jpg?alt=media&amp;token=76168d45-567e-4790-bdca-02c7e59b2eb6" alt=""><figcaption></figcaption></figure>

### Step 10: Select the Data to Input

Click the `{}` button to select the data to input, also known as variables. This includes the Collection Name, Collection Listed Floor, and “Value” for the Listing Price.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FwaBstPIbG4X4qOEmkigA%2F10.jpg?alt=media&amp;token=0fed7d05-230a-4326-8cf2-90e71114c41b" alt=""><figcaption></figcaption></figure>

### Step 11: Format OpenSea Link

For the OpenSea Link, note that the link format is `https://opensea.io/assets/ethereum/collectionaddress/tokenid`. The collection address and the token id change, but the rest of the link stays the same. Pick the Collection address and the token id and place them in the right place, separated by a `/`.&#x20;

### Step 12: Set Notification Channel

Set the channel where you want to receive your Listing alerts. If you've already added a channel, select it from your list of channels. If not, learn how to add one here.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FFhPMPk5E0MNMWlbmSjgB%2F11.jpg?alt=media&amp;token=47d70a18-f46c-4bc7-8ad2-67226abd34df" alt=""><figcaption></figcaption></figure>

### Step 13: Create the Automation

Click **Create**.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2Fm6uBSs9gcOeU99BcdNFd%2F12.jpg?alt=media&amp;token=d48dac20-956a-44e1-9e58-f436a676ed19" alt=""><figcaption></figcaption></figure>

### Step 14: Enable the Automation

Click **Enable Automation** in the top-right corner.&#x20;

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FWRpvSY8E9BhZbiw8FTew%2F13.jpg?alt=media&amp;token=9087a4ad-1818-4568-b9e5-d1bc401e97f2" alt=""><figcaption></figcaption></figure>

### Step 15: Automation is Live!

Your automation is now live! You'll receive alerts on your chosen chat app. You can also track any runs of this automation by going to the History. Learn more about the automation run history here.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FZoEchRTZcdlTsVKUsr3k%2F14.jpg?alt=media&amp;token=e4f922de-b416-4e7c-b066-41093f5c68e3" alt=""><figcaption></figcaption></figure>


# Triggers


# Token Received

Activates when a new token is received by a wallet or a group of wallets

This trigger activates when a new token is received by a [Wallet](/wallets/wallet-overview) or a [Wallet Group](/wallets/wallet-groups).&#x20;

Token Received triggers for two transaction types: Buys and Transfers.\
\
You can adjust the Trigger's filters to specify details such as the wallet or wallet group that received the token, the collection the token belongs to, or the collection's floor price.&#x20;

In the [Advanced settings](/automations/triggers/trigger-advanced-settings), you have the option to set the number of token receipts required within a specific time frame to activate the Token Received trigger.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FoDuZcFpy1pCyxJ8yMjxh%2FCleanShot%202023-06-13%20at%2010.46.11%402x.png?alt=media&amp;token=2d07257d-3c5b-477a-9ab7-c15be0bed3d5" alt="" width="375"><figcaption><p>At least 5 tokens have to be received by any member of the Alpha group within within a 6 hour timeframe for for this trigger.</p></figcaption></figure>

This is particularly useful for tracking the activities of profitable traders or members of an alpha group who are acquiring tokens in unison.

{% hint style="info" %}
**Often used in:** Alpha group copy trading, wallet copy trading.
{% endhint %}


# Token Sent

Activates when a new token is sent by a wallet or a group of wallets

This trigger activates when a new token is sent by a [Wallet](/wallets/wallet-overview) or a [Wallet Group](/wallets/wallet-groups).&#x20;

Token Received triggers for NFT Transfers out of the wallet and NFT sales.

You can adjust the Trigger's filters to specify details such as the wallet or wallet group that sent the token, the collection the token belongs to, or the collection's floor price.&#x20;

In the [Advanced settings](/automations/triggers/trigger-advanced-settings), you have the option to set the required number of tokens sent within a specific time frame to activate the Token Received trigger.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2F0D3ipaTU6dc08uTavWiG%2FCleanShot%202023-06-13%20at%2012.44.03%402x.png?alt=media&amp;token=5113a0ec-f10d-4ef4-9e80-59e556c51551" alt="" width="375"><figcaption><p>At least 5 tokens have to be sent from any member of the Alpha group within a 6 hour timeframe for for this trigger.</p></figcaption></figure>

This is particularly useful for tracking the activities of profitable traders or members of an alpha group who are acquiring tokens in unison.


# Token Bought

This trigger activates when a token is purchased on the blockchain. You can customize the conditions to specify particular details such as the wallet or wallet group that made the purchase, the collection the token belongs to, or the purchase price.

Token purchases are tracked on Blur, Opensea, LooksRare and X2Y2.

In the [Advanced settings](/automations/triggers/trigger-advanced-settings), you can set the number of token purchases required within a specific time frame to activate the Token Bought trigger.


# Token Sold

This trigger activates when a token is sold on either OpenSea, Blur, X2Y2 or Looksrare.\
You can customize the conditions to specify particular details such as the wallet or [wallet group](/wallets/wallet-groups) that made the sale, the collection the token belongs to, or the selling price.\
\
In the [Advanced settings](/automations/triggers/trigger-advanced-settings), you have the option to set the number of token sales required within a specific time frame to activate the Token Sold trigger.

This trigger is particularly useful for detecting one or a group of smart traders dumping or moving out of a collection. It allows you to track token movements, identify patterns and behaviors, and trigger automated actions in response.\
\
Token Sold trigger is also useful for tracking changes to the trading volume of a collection. By monitoring token sales, you can gain insights into the overall trading activity of a collection and detect any significant changes in volume.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FdhpFtJX0v191zO00MjU2%2FCleanShot%202023-06-13%20at%2012.46.35%402x.png?alt=media&amp;token=721c63b9-2dc5-4388-b1f5-e05b30b8bd61" alt="" width="375"><figcaption><p>Token Sold Trigger</p></figcaption></figure>


# Token Minted

This trigger is triggered when a new ERC 721 or ERC 1155 token is minted on Ethereum. You can add filters to specify details such as the wallet or [wallet group](/wallets/wallet-groups) that minted the token, the collection the token belongs to, the minting price and more.

Under the [Advanced settings](/automations/triggers/trigger-advanced-settings), you have the option to specify the number of mints required within a specific time period to activate the Token Minted trigger.<br>

**Example Use Case:**

Suppose you want to trigger an automation when wallet 0xdead mints at least two tokens with a value of 0.1 each within a 15-minute timeframe. In that case, you can use this to trigger your automation and send you an Alert to your phone.

{% hint style="info" %}
**Often used in:** Profitable minter alerts for copy-minting.
{% endhint %}


# Webhook

The Webhook trigger lets you to connect Compass with external web applications and services.

With the ability to customize the trigger URL and HTTP method, you can easily integrate other data into Compass with any service that supports webhooks.

The Webhook trigger provides flexibility and allows you to automate your workflow beyond the Compass platform.


# Repeat

The Repeat trigger is one of the most used triggers, as it offers a wide range of use cases. The  trigger has two inputs: repeat period and max repetitions.

It will trigger the automation once at the beginning of each repeat period. If there is no max repetition given it will trigger over and over again indefinitely. With a max repetitions specified, it will turn off after the max repetition is reached.

{% hint style="info" %}
**Tip:** The max repetitions counts the total number of runs since the automation was created.
{% endhint %}

Please note that there isn't a lower limit on the repeat period in automations. However, it's important to consider that the actions following the repeat trigger need a certain fraction of a second to execute.

If the repeat timer is set faster than the time required to execute all the actions in the automation, this will cause a queue of automation runs to form. This is because Compass does not support parallel runs of a single automation.

Hence, when setting the repeat timer, ensure it is not faster than the total execution time of the actions in your automation. This will prevent the formation of an automation run queue and ensure smooth operation.

**Example use cases:**

Combined with the right Actions, the repeat trigger is used to automatically list tokens at the floor price, place repeated bids, monitor floor price movements, set up one-time automated actions, and much more.


# Token Listed

The Token Listed trigger activates when a token is listed for sale on either OpenSea, Blur, X2Y2 or Looksrare.

You can add filters to specify details such as the wallet or wallet group that listed the token, the collection the token belongs to, the listing price, traits and more.

In the [Advanced settings](/automations/triggers/trigger-advanced-settings), you have the option to set the number of listings required within a specific time frame to activate the List trigger.

**Example use cases:**

This trigger is particularly useful for detecting when a token gets listed for sale, or when there is a sudden spike of listings in a collection or by a trader. It allows you to monitor marketplace activity, identify new buying opportunities, and trigger automated actions in response.

The List trigger can also detect listings with or without specific traits priced below the collection floor price, allowing you to snipe rare tokens at a discount.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2Ft3m8iz6kuFbH1MdG0mTF%2FCleanShot%202023-06-13%20at%2014.17.51%402x.png?alt=media&amp;token=f9649a6b-d574-42db-8cb4-4e9ea7001c95" alt="" width="375"><figcaption><p>Example Listing Trigger</p></figcaption></figure>


# Telegram

The telegram Trigger lets you run Automations by sending a message to the [@compass\_nft\_alert\_bot](http://t.me/compass_nft_alert_bot) on the Telegram chat app.

### How to Use

**Step 1:**\
Send the `/start` command to `@compass_nft_alert_bot`.

**Step 2:**\
Input your Telegram ID in the designated field.

Once your chat ID is set up, sending any message to the Telegram bot will trigger the specified automation.

If you want to trigger the automation with a particular command, send a message to the bot starting with a `/`. This forward slash will parse out the message as a command. The command will then be passed on to the automation as `{{ automationInputs.command }}`.

To continue only if `{{ automationInputs.command }}` matches your preferred word, add the condition: `Only continue if {{ automationInputs.command }} equals [your desired word]`.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FEp2gfpJmiI0ozfwsMOPd%2FCleanShot%202023-06-13%20at%2018.52.06%402x.png?alt=media&amp;token=4054eb6d-6455-44b5-8d5e-dc9a507c0d57" alt="" width="375"><figcaption><p>This Automation uses the "/Domp it" telegram command</p></figcaption></figure>

### Use Cases

* Initiate a WETH/ETH Swap by starting/stopping bidding via a Telegram message.
* Transfer all your tokens to your Vault in case of an emergency.
* Cancel all your listings and offers on marketplaces urgently.
* Request Wallet/Collection/market reports on-demand via messages.
* Accept the top offers on your NFTs with a single Telegram message.


# Trigger Advanced Settings

In the advanced settings of each trigger, you have the option to set the number of trigger events required within a specific time frame to activate the said Trigger.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FoDuZcFpy1pCyxJ8yMjxh%2FCleanShot%202023-06-13%20at%2010.46.11%402x.png?alt=media&amp;token=2d07257d-3c5b-477a-9ab7-c15be0bed3d5" alt="" width="375"><figcaption><p>At least 5 tokens have to be received by any member of the Alpha group within within a 6 hour timeframe for for this trigger.</p></figcaption></figure>

The count by field determines what distinct values, or value combos to count. You can select one or multiple options from count by Token, Wallet and Collection

### The Count By mechanism with examples

In the following three examples, we've created a [Token Bought](/automations/triggers/token-bought) trigger for a [Wallet Group](/wallets/wallet-groups). We show how the different count-by settings activate the trigger.&#x20;

**Example 1**

Below we can see a table with the NFT purchases of the wallet group.&#x20;

Our Token Bought trigger has the following settings:\
**Min triggers to run:** 2\
**Count by:** Wallet

Let's see when and why our trigger activates.

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FMQnuMIt6CvQsoOcAJvgK%2FCleanShot%202023-06-13%20at%2015.53.00%402x.png?alt=media&amp;token=5cf68f8b-3190-492a-864e-95d34e674c98" alt="" width="343"><figcaption></figcaption></figure>

The with our trigger settings, the trigger is looking for wallets that make at least 2 purchases. Therefore it will trigger on Transaction 3, 5 and 6; as wallet A purchased 3 times and wallet B purchased 2 times. The trigger will only activate when a wallet buys at least 2 times from any collection and any token.

**Example 2**

In this example we've set the default settings for the Trigger.&#x20;

Our Token Bought trigger has the following settings:\
**Min triggers to run:** 1\
**Count by:** Token

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2F3J7ZcyNIwcpdr7ZzFImr%2FCleanShot%202023-06-13%20at%2015.59.44%402x.png?alt=media&amp;token=b0ca56f2-ac57-4328-8161-0d1237dba20d" alt="" width="340"><figcaption></figcaption></figure>

The trigger is looking for transactions that have purchased a token. Therefore it will trigger for every single transaction.

**Example 3**

In this example, we've picked both Wallet and Collection as count-by values.

Our Token Bought trigger has the following settings:\
**Min triggers to run:** 2\
**Count by:** Wallet,Collection

<figure><img src="https://1346201199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ft4f6ZGVeTyRL9FmNULCt%2Fuploads%2FtBZcWrP3KbuPXAfOF5Ki%2FCleanShot%202023-06-13%20at%2016.01.42%402x.png?alt=media&amp;token=ac4649b9-cbef-4c77-8266-794710ea75cb" alt="" width="317"><figcaption></figcaption></figure>

Here, the trigger is looking for the same wallet to have at least 2 purchases from the same collection. In other words it is looking at least 2 instances of the same Wallet-Collection pair.

It will trigger for transaction 5 as only Wallet A has purchased 2 or more times from the DOODLES collection.


# Pricing

Automations operate on a per-run basis and require credits, which you can purchase using either crypto or a credit card. Once you've topped up your credits, you can start running automations.

{% hint style="info" %}
**Tip:** 1 Credit = 1 USD
{% endhint %}

The number of credits charged depends on the complexity of the automation you're running.

### How to Top Up Credits

1. Navigate to [`Automations`](https://compass.art/automations).
2. Click on [`Credits`](https://compass.art/automations/credits).
3. Click on `Deposit`.
4. Choose the amount you want to deposit.
5. Select your preferred payment method: `Card` or `Crypto`.
6. You can now start running Automations!

{% hint style="info" %}
**Tip:** To save on Gas, Top Up on Polygon or Creditcard.
{% endhint %}

Below are typical costs for various types of Automations:

* Trait Outbidder: **$0.90 per month** per trait with a 5-minute loop
* Generic Alert: **$0.30 per month** per alert.
* Auto Lister: **$2.20 per month** per NFT with a 15-minute loop
* Blur Farmer: **$50.00 per month** for 50 farmed collections
* Token Bidder: **$44.80 per month** for 100 tokens with a 5-minute loop
* Collection Bidder: **$0.90 per month** per trait with a 5-minute loop

Compass Analytics, which includes everything that is not Automations, is priced at $20 per month. Subscribing to Compass Analytics grants you a 100% cash-back in automation credits, equating to $20 worth of automation credits per month.

For Compass lifetime pass holders, there's free access to Compass Analytics and a 10% discount on top-ups for each pass held, up to 50%.

Here are the exact costs for each of our actions:

| Action Name                               | USD Price per Run |
| ----------------------------------------- | ----------------: |
| Get collection breakeven price            |           0.00005 |
| Get last sale of token                    |           0.00005 |
| Get collection floor                      |           0.00005 |
| Get token rarity                          |           0.00005 |
| Get collection bid depth on Blur          |           0.00005 |
| Get wallet offers                         |           0.00005 |
| Get collection watchlist                  |           0.00005 |
| Get wallet bids on Blur                   |           0.00005 |
| Bid on Blur                               |           0.00080 |
| Get blur collection stats                 |           0.00005 |
| List token on Blur                        |           0.00080 |
| Remove Collection from Watchlist          |           0.00005 |
| Get collection active loan offers on Blur |           0.00005 |
| Cancel loan offer on Blur                 |           0.00080 |
| Create loan offer on Blur                 |           0.00080 |
| Get wallet loan offers on Blur            |           0.00005 |
| Deposit ETH into Blur pool                |           0.00080 |
| Add Collection to Watchlist               |           0.00005 |
| Get wallet NFT portfolio value            |           0.00005 |
| Cancel all orders on Blur                 |           0.00080 |
| Get wallet loans on Blur                  |           0.00005 |
| Get Blur point stats                      |           0.00025 |
| Get wallet token balance                  |           0.00005 |
| Get ERC20 Balance                         |           0.00020 |
| Cancel Blur collection bid                |           0.00080 |
| Get wallet ETH balance                    |           0.00020 |
| Get collection metrics                    |           0.00005 |
| Get collection tokens                     |           0.00005 |
| Get collection info                       |           0.00005 |
| Get collection price by marketplace       |           0.00005 |
| Sell token on Blur                        |           0.00080 |
| Get trending collections                  |           0.00005 |
| Get wallet tokens                         |           0.00010 |
| Get wallet collections                    |           0.00005 |
| Unwrap WETH                               |           0.00010 |
| Wrap ETH                                  |           0.00010 |
| Get Watchlist Collections with Metrics    |           0.00005 |
| setVariable                               |           0.00000 |
| script                                    |           0.00000 |
| repeat                                    |           0.00000 |
| notify                                    |           0.00005 |
| list                                      |           0.00050 |
| group                                     |           0.00000 |
| filter                                    |           0.00000 |
| createAutomation                          |           0.00005 |
| buy                                       |           0.00050 |
| bid                                       |           0.00050 |


# Custom Actions

## Getting Started with Custom Actions

Custom Actions are a powerful feature of our automation suite, allowing you to write and execute your own JavaScript code within automations. You can even share these Custom Actions with others!

### Structure of Actions

A Custom Action comprises three parts:

* **Input**: The data that you want to pass into the action. This is defined via the UI.
* **Output**: The data that the action returns. This is also defined via the UI.
* **Script**: The JavaScript code that processes the input and generates the output.

To learn more about Inputs and Outputs, see [this article](/automations/inputs-outputs).

### The Script

Your script will run inside a V8 sandbox environment, which supports ES2020 syntax and exposes standard JavaScript APIs (e.g., Math, String, Array, etc.).

#### Packages

In addition to vanilla JavaScript APIs, you can also import and use certain packages within your scripts. Currently, the following packages are available:

* [`@compass/http`](/automations/custom-actions/compass-http) - Simplified HTTP request functionalities
* [`@compass/wallet`](/automations/custom-actions/compass-wallet) - Utilities to work with wallets
* [`@compass/api`](/automations/custom-actions/compass-api) - Query the Compass API easily
* [`@compass/cache`](/automations/custom-actions/compass-cache) - Store and retrieve temporary data to be reused across automations&#x20;
* [`@compass/utils`](/automations/custom-actions/compass-utils) - Utility functions

Click on the links to access detailed documentation for each package.

#### Scripting Environment

The sandbox environment imports your script as a module, and it should export a function as default. This function receives a `context` object as the first argument. The `context.inputs` property contains the input values passed to the action, as defined by the inputs.

Your function (which can be asynchronous) should return an object with keys that match those defined in the outputs.

### Example

Here is a basic example of a script that makes a GET request:

```javascript
import http from "@compass/http";

export default async function(context) {
    const data = await http.get(context.inputs.url);

    return {
        responseData: data,
    }
}
```

In this script, the `url` is passed as an input, and the resulting data is returned as an `items` output.

Custom Actions provide an incredibly flexible way to extend the capabilities of our automation suite, and we're excited to see what you'll build with them!


# @compass/http

This package provides simplified HTTP request functionalities, allowing you to make requests using different methods (GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS).

### Usage

Import it in the action:

```javascript
import http from "@compass/http";
```

### API Reference

#### `http.get(url: string, options?: RequestConfig)`

Sends a GET request to the specified URL.

* `url` (required, string): The URL where the request should be sent.
* `options` (optional, `RequestConfig`): The request configuration options.

Returns a Promise that resolves with the response.

#### `http.post(url: string, data?: any, options?: RequestConfig)`

Sends a POST request to the specified URL.

* `url` (required, string): The URL where the request should be sent.
* `data` (optional, any): The data to be sent as the request body.
* `options` (optional, `RequestConfig`): The request configuration options.

Returns a Promise that resolves with the response.\
\
`RequestConfig`

An object that configures the request. It accepts the following properties:

* `url` (optional, string): The URL where the request should be sent.
* `method` (optional, 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'HEAD' | 'OPTIONS'): The HTTP method for the request.
* `headers` (optional, object): Any headers you want to add to your request.
* `params` (optional, any): URL parameters to be sent with the request.
* `data` (optional, any): The data to be sent as the request body. Used primarily with 'POST', 'PUT' and 'PATCH' requests.

### Examples

To send a GET request:

```javascript
import http from "@compass/http";

export default async function() {
    try {
        const data = await http.get('https://example.com/api/items');
        log(data);

        return {
            items: data,
        }
    } catch (error) {
        log(error);
    }
}

```

To send a POST request:

```javascript
import http from "@compass/http";

export default async function() {
    const postData = {
        name: 'John',
        email: 'john@example.com'
    };

    try {
        const data = await http.post('https://example.com/api/users', postData);
        log(data);

        return {
            user: data,
        }
    } catch (error) {
        log(error);
    }
}

```

Remember that error handling is important to take care of any potential errors that might occur during the request.


# @compass/api

This package provides functionalities to interact with the Compass API using GraphQL queries and mutations.

### Usage

```javascript
import api from "@compass/api";
```

### API Reference

#### `api.query(document: string, variables?: Record<string, any>)`

Sends a GraphQL query to the Compass API.

* `document` (required, string): The GraphQL document to send.
* `variables` (optional, Record\<string, any>): The variables to send with the query.

Returns a Promise that resolves with the result of the query.

#### `api.mutate(document: string, variables?: Record<string, any>)`

Sends a GraphQL mutation to the Compass API.

* `document` (required, string): The GraphQL document to send.
* `variables` (optional, Record\<string, any>): The variables to send with the mutation.

Returns a Promise that resolves with the result of the mutation.

### Examples

To send a GraphQL query:

```javascript
import api from "@compass/api";

export default async function() {
    const document = `
      query($id: String!) {
        collection(where: { id: $id }) {
          id
          name
        }
      }
    `;

    const variables = {
      id: '1'
    };

    const {data} = await api.query(document, variables);
    log(data);

    return {
        user: data.user,
    }
}
```


# @compass/cache

This package provides functionalities to interact with the Compass cache system. You can retrieve, set and manage cache data.

### Usage

```javascript
import cache from "@compass/cache";
```

### API Reference

#### `cache.get(key: string)`

Retrieves a value from the cache. Returns null if the key does not exist.

* `key` (required, string): The key to retrieve.

Returns a Promise that resolves with the value associated with the key in the cache.

#### `cache.set(key: string, value: any, ttl: number = 60 * 60)`

Sets a value in the cache. If a value already exists for the key, it will be overwritten.

* `key` (required, string): The key to set.
* `value` (required, any): The value to set.
* `ttl` (optional, number): The time to live in seconds. Defaults to 60 minutes (60 \* 60).

Returns a Promise that resolves once the key-value pair is successfully stored in the cache.

### Examples

To retrieve a value from the cache:

```javascript
import cache from "@compass/cache";

export default async function() {
    const key = 'myKey';
    const value = await cache.get(key);

    return {
      value,
    }
}
```

To set a value in the cache:

```javascript
import cache from "@compass/cache";

export default async function() {
    const key = 'myKey';
    const value = 'Hello, World!';
    const ttl = 60 * 60; // 1 hour

    await cache.set(key, value, ttl);
    
    return {
      success: true,
    }
}
```


# @compass/utils

This package provides utility functions for handling Ether values. The functions are bound from the `ethers.js` package and are used to parse and format Ether and unit values as well as get the current gas fee data.

### Usage

```javascript
import utils from "@compass/utils";
```

### API Reference

#### `utils.parseEther(value: string)`

Parse a decimal value to a BigNumber.

* `value` (required, string): The value to parse.

Returns a string representation of the BigNumber.

#### `utils.parseUnits(value: string, unit: string)`

Parse a decimal value to a BigNumber.

* `value` (required, string): The value to parse.
* `unit` (required, string): The unit to parse the value to.

Returns a string representation of the BigNumber.

#### `utils.formatEther(value: string)`

Format a BigNumber to a decimal value.

* `value` (required, string): The value to format.

Returns a string representation of the formatted value.

#### `utils.formatUnits(value: string, unit: string)`

Format a BigNumber to a decimal value.

* `value` (required, string): The value to format.
* `unit` (required, string): The unit to format the value to.

Returns a string representation of the formatted value.

#### `utils.getFeeData()`

Get the current gas fee data.

Returns a Promise that resolves with an object containing `gasPrice`, `maxFeePerGas`, and `maxPriorityFeePerGas`.

### Examples

To parse a decimal value to a BigNumber:

```javascript
import utils from "@compass/utils";

export default async function() {
    const value = '1.5';
    const parsedEther = utils.parseEther(value);
    return { parsedEther };
}
```

To parse a decimal value to a specific unit:

```javascript
import utils from "@compass/utils";

export default async function() {
    const value = '1000';
    const unit = 'wei';
    const parsedUnits = utils.parseUnits(value, unit);
    return { parsedUnits };
}
```

To format a BigNumber to a decimal value:

```javascript
import utils from "@compass/utils";

export default async function() {
    const value = '1.5';
    const formattedEther = utils.formatEther(value);
    return { formattedEther };
}
```

To format a BigNumber to a specific unit:

```javascript
import utils from "@compass/utils";

export default async function() {
    const value = '1000';
    const unit = 'wei';
    const formattedUnits = utils.formatUnits(value, unit);
    return { formattedUnits };
}
```

To get the current gas fee data:

```javascript
import utils from "@compass/utils";

export default async function() {
    const feeData = await utils.getFeeData();
    return { feeData };
}
```


# @compass/variables

This package provides functionalities to interact with the automation context in Compass. It allows you to retrieve and set variables within the context.

### Usage

```javascript
import variables from "@compass/variables";
```

### API Reference

#### `variables.get(key: string, scope?: string)`

Retrieve a variable from the automation context.

* `key` (required, string): The key of the variable to retrieve.
* `scope` (optional, string): The scope of the variable to retrieve.

Returns the value of the variable. Returns null if the variable does not exist.

#### `variables.set(key: string, value: any, scope?: string)`

Set a variable in the automation context.

* `key` (required, string): The key of the variable to set.
* `value` (required, any): The value of the variable to set.
* `scope` (optional, string): The scope of the variable to set.

Returns the value of the variable.

### Examples

To retrieve a variable from the automation context:

```javascript
import variables from "@compass/variables";

export default async function() {
    const key = 'variableKey';
    const scope = 'local';
    const value = variables.get(key, scope);
    return { value };
}
```

To set a variable in the automation context:

```javascript
import variables from "@compass/variables";

export default async function() {
    const key = 'variableKey';
    const value = 'Hello, World!';
    const scope = 'local';
    const setValue = variables.set(key, value, scope);
    return { setValue };
}
```


# @compass/wallet

This package provides an easy to use wallet class for signing messages and sending transactions with a connected wallet. The wallet class requires an address to initialize and provides methods for signing and transactions.

### Usage

```javascript
import Wallet from "@compass/wallet";
```

### API Reference

#### `class Wallet`

Main class of the module, representing a wallet instance.

**`constructor(address: string)`**

Create a new wallet instance.

* `address` (required, string): The address of the wallet.

Returns a new wallet instance.

**`wallet.signMessage(message: string)`**

Sign a message with the wallet.

* `message` (required, string): Message to sign.

Returns a Promise that resolves with the signed message.

**`wallet.signTypedData(domain: any, types: any, value: any)`**

Sign typed data with the wallet. (v4)

* `domain` (required, any): The domain of the typed data.
* `types` (required, any): The types of the typed data.
* `value` (required, any): The value of the typed data.

Returns a Promise that resolves with the signed typed data.

**`wallet.sendTransaction(transaction: any)`**

Send a transaction with the wallet.

* `transaction` (required, any): Transaction to send.

Returns a Promise that resolves with the transaction receipt.

### Examples

To create a new wallet instance:

```javascript
import Wallet from "@compass/wallet";

export default function() {
    const address = '0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B';
    const wallet = new Wallet(address);
    return { wallet };
}
```

To sign a message with the wallet:

```javascript
import Wallet from "@compass/wallet";

export default async function() {
    const address = '0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B';
    const wallet = new Wallet(address);
    const message = 'Hello, World!';
    const signedMessage = await wallet.signMessage(message);
    return { signedMessage };
}
```

To sign typed data with the wallet:

```javascript
import Wallet from "@compass/wallet";

export default async function() {
    const address = '0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B';
    const wallet = new Wallet(address);
    const domain = {/* ... */};
    const types = {/* ... */};
    const value = {/* ... */};
    const signedData = await wallet.signTypedData(domain, types, value);
    return { signedData };
}
```

To send a transaction with the wallet:

```javascript
import Wallet from "@compass/wallet";

export default async function() {
    const address = '0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B';
    const wallet = new Wallet(address);
    const transaction = {/* ... */};
    const transactionReceipt = await wallet.sendTransaction(transaction);
    return { transactionReceipt };
}
```


